:root { --color-obsidian:     #0d0d0f;
--color-ivory:        #f5f2ed;
--color-accent:       #c8a96e;
--color-accent-dark:  #a8894e;
--color-slate-100:    #f0ede8;
--color-slate-200:    #e2ddd6;
--color-slate-400:    #9e9890;
--color-slate-600:    #6b6560;
--color-slate-800:    #2e2b28;
--color-success:      #3d7a5f;
--color-error:        #c0392b;
--text-dark:          var(--color-obsidian); --color-bg:           var(--color-ivory);
--color-surface:      #ffffff;
--color-text:         var(--color-slate-800);
--color-text-muted:   var(--color-slate-600);
--color-border:       var(--color-slate-200);  --ap-green-50:   #f0fdf4;
--ap-green-100:  #dcfce7;
--ap-green-400:  #4ade80;
--ap-green-500:  #22c55e;
--ap-green-600:  #16a34a;
--ap-slate-50:   #f8fafc;
--ap-slate-100:  #f1f5f9;
--ap-slate-200:  #e2e8f0;
--ap-slate-300:  #cbd5e1;
--ap-slate-400:  #94a3b8;
--ap-slate-500:  #64748b;
--ap-slate-600:  #475569;
--ap-slate-700:  #334155;
--ap-slate-800:  #1e293b;
--ap-slate-900:  #0f172a;
--ap-header-h:   72px;
--ap-topbar-h:   38px;
--ap-body-offset: 106px; --font-display: 'Montserrat', Georgia, serif;
--font-heading: 'Montserrat', Georgia, serif;
--font-body:    'DM Sans', system-ui, -apple-system, sans-serif; --font-sans:    var(--font-body); --text-xs:   0.64rem;
--text-sm:   0.8rem;
--text-base: 1rem;
--text-lg:   1.25rem;
--text-xl:   1.563rem;
--text-2xl:  1.953rem;
--text-3xl:  2.441rem;
--text-4xl:  3.052rem;
--text-5xl:  3.815rem;
--text-6xl:  clamp(3rem, 6vw, 5rem);
--leading-tight:  1.15;
--leading-snug:   1.35;
--leading-normal: 1.6;
--leading-loose:  1.8;
--tracking-tight:  -0.03em;
--tracking-normal:  0em;
--tracking-wide:    0.08em;
--tracking-wider:   0.15em; --space-1:  0.25rem;
--space-2:  0.5rem;
--space-3:  0.75rem;
--space-4:  1rem;
--space-5:  1.25rem;
--space-6:  1.5rem;
--space-8:  2rem;
--space-10: 2.5rem;
--space-12: 3rem;
--space-16: 4rem;
--space-20: 5rem;
--space-24: 6rem;
--space-32: 8rem;
--space-40: 10rem;
--section-py:     clamp(var(--space-16), 8vw, var(--space-40));
--section-px:     clamp(var(--space-6), 5vw, var(--space-20));
--container-max:  1280px;
--container-wide: 1440px;
--ap-container-max: 1280px;
--ap-container-padding: clamp(1rem, 4vw, 1.5rem); --radius-sm:   4px;
--radius-md:   8px;
--radius-lg:   16px;
--radius-xl:   24px;
--radius-full: 9999px; --shadow-sm:   0 1px 3px rgba(13,13,15,0.08), 0 1px 2px rgba(13,13,15,0.04);
--shadow-md:   0 4px 16px rgba(13,13,15,0.10), 0 2px 6px rgba(13,13,15,0.06);
--shadow-lg:   0 12px 40px rgba(13,13,15,0.12), 0 4px 12px rgba(13,13,15,0.06);
--shadow-xl:   0 24px 64px rgba(13,13,15,0.16);
--shadow-gold: 0 8px 32px rgba(200,169,110,0.25); --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
--ease-in-out:   cubic-bezier(0.4, 0, 0.2, 1);
--ease-spring:   cubic-bezier(0.34, 1.56, 0.64, 1);
--duration-fast:   150ms;
--duration-normal: 300ms;
--duration-slow:   500ms;
--duration-slower: 800ms;
}
@supports (color: oklch(0% 0 0)) {
:root {
--color-accent:   oklch(72% 0.08 68);
--color-obsidian: oklch(8% 0 0);
}
}@font-face {
font-family: 'Montserrat';
src: url(//artipozitif.com/wp-content/themes/artipozitif-theme/assets/fonts/montserrat-600.woff2) format('woff2');
font-weight: 600;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Montserrat';
src: url(//artipozitif.com/wp-content/themes/artipozitif-theme/assets/fonts/montserrat-600-italic.woff2) format('woff2');
font-weight: 600;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'DM Sans';
src: url(//artipozitif.com/wp-content/themes/artipozitif-theme/assets/fonts/dm-sans-400.woff2) format('woff2');
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'DM Sans';
src: url(//artipozitif.com/wp-content/themes/artipozitif-theme/assets/fonts/dm-sans-500.woff2) format('woff2');
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'DM Serif Display';
src: url(//artipozitif.com/wp-content/themes/artipozitif-theme/assets/fonts/dm-serif-display-400.woff2) format('woff2');
font-weight: 400;
font-style: normal;
font-display: swap;
} html {
font-family: var(--font-body);
font-size: 100%; scroll-behavior: smooth;
-webkit-text-size-adjust: 100%;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
body {
font-family: var(--font-body);
font-size: var(--text-base);
line-height: var(--leading-normal);
color: var(--color-text);
background-color: var(--color-bg);
} h1, h2, h3, h4, h5, h6 {
font-family: var(--font-display);
font-weight: 600;
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
}
h3, h4 {
font-family: var(--font-heading);
font-weight: 400;
} @supports (text-box-trim: trim-both) {
h1, h2, h3, h4 {
text-box-trim: trim-both;
text-box-edge: cap alphabetic;
}
} a {
color: inherit;
text-decoration: inherit;
} :focus-visible {
outline: 2px solid var(--color-accent);
outline-offset: 2px;
} input::placeholder,
textarea::placeholder {
opacity: 1;
color: var(--color-slate-400);
} img, video {
max-width: 100%;
height: auto;
}
img, svg, video, canvas, audio, iframe, embed, object {
display: block;
vertical-align: middle;
} ol, ul, menu {
list-style: none;
margin: 0;
padding: 0;
} table {
border-collapse: collapse;
} .sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.ap-breadcrumb__list li {
display: inline-block;
font-size: 8pt;
font-weight: 600;
margin-right: 20px;
position: relative;
}
.ap-breadcrumb__list li:not(:last-child):after {
position: absolute;
top: 0;
right: -15px;
display: block;
content: '>';
color: #7e7e7e;
} .ap-ct-answer {
position: relative;
background-color: var(--color-ivory);
border-radius: var(--radius-lg);
border: 1px solid var(--color-border);
border-bottom: 1px solid var(--color-border);
padding: var(--space-8) var(--space-10);
padding-block: var(--space-16);
box-shadow: var(--shadow-sm);
}
.ap-ct-answer::before {
content: '';
position: absolute;
inset-block: 0;
inset-inline-start: 0;
width: 4px;
background: linear-gradient(
to bottom,
var(--color-accent),
var(--color-accent-dark)
);
border-radius: var(--radius-sm) 0 0 var(--radius-sm);
}
.ap-ct-answer__question {
font-family: var(--font-display);
font-size: var(--text-xl);
font-weight: 600;
line-height: var(--leading-snug);
color: var(--color-slate-800);
margin-bottom: var(--space-4);
}
.ap-ct-answer__text {
font-size: var(--text-base);
line-height: var(--leading-loose);
color: var(--color-text-muted);
}.ap-gtm-noscript { display: none; visibility: hidden; }
.dn {display:none}.ap-container {
width: 100%;
max-width: var(--container-max);
margin-inline: auto;
padding-inline: var(--section-px);
}
.ap-container--wide {
max-width: var(--container-wide);
}
.ap-container--narrow {
max-width: 800px;
} .ap-section {
padding-block: var(--section-py);
padding-inline: var(--section-px);
}
.ap-section--sm {
padding-block: clamp(var(--space-8), 5vw, var(--space-16));
}  .ap-services-grid {
container-type: inline-size;
container-name: services;
display: grid;
grid-template-columns: 1fr;
gap: var(--space-6);
}
@container services (min-width: 600px) {
.ap-services-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@container services (min-width: 900px) {
.ap-services-grid {
grid-template-columns: repeat(3, 1fr);
}
} .ap-services-grid .ap-service-card {
display: grid;
grid-row: span 4; grid-template-rows: subgrid;
} .ap-portfolio-grid {
container-type: inline-size;
container-name: portfolio;
display: grid;
grid-template-columns: 1fr;
gap: var(--space-6);
}
@container portfolio (min-width: 600px) {
.ap-portfolio-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@container portfolio (min-width: 900px) {
.ap-portfolio-grid {
grid-template-columns: repeat(3, 1fr);
}
} .ap-blog-grid {
container-type: inline-size;
container-name: blog;
display: grid;
grid-template-columns: 1fr;
gap: var(--space-8);
}
@container blog (min-width: 640px) {
.ap-blog-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@container blog (min-width: 960px) {
.ap-blog-grid {
grid-template-columns: repeat(3, 1fr);
}
} .ap-layout-2col {
container-type: inline-size;
container-name: layout2col;
display: grid;
grid-template-columns: 1fr;
gap: var(--space-12);
}
@container layout2col (min-width: 768px) {
.ap-layout-2col {
grid-template-columns: 1fr 1fr;
}
}
@container layout2col (min-width: 1024px) {
.ap-layout-2col--asymmetric {
grid-template-columns: 3fr 2fr;
}
} .ap-header-wrapper {
container-type: scroll-state;
position: sticky;
top: 0;
z-index: 100;
} .ap-cv-auto {
content-visibility: auto;
contain-intrinsic-size: 0 400px;
} .ap-flex-center {
display: flex;
align-items: center;
justify-content: center;
}
.ap-flex-between {
display: flex;
align-items: center;
justify-content: space-between;
}
.ap-flex-col {
display: flex;
flex-direction: column;
} .ap-gap-4  { gap: var(--space-4); }
.ap-gap-6  { gap: var(--space-6); }
.ap-gap-8  { gap: var(--space-8); }
.ap-gap-12 { gap: var(--space-12); }
.ap-gap-16 { gap: var(--space-16); }body {
padding-top: var(--ap-body-offset, 106px);
transition: padding-top 0.32s ease;
}
body.ap-header-compact { --ap-body-offset: 68px; }
.admin-bar body { padding-top: calc(var(--ap-body-offset, 106px) + 0px); }
@media screen and (max-width: 782px) {
.admin-bar body { padding-top: calc(var(--ap-body-offset, 106px) + 46px); }
} .skip-link {
position: absolute; left: -9999px; top: auto;
width: 1px; height: 1px; overflow: hidden;
}
.skip-link:focus {
left: 6px; top: 6px; width: auto; height: auto;
padding: 0.5rem 1rem;
background-color: var(--color-obsidian);
color: #fff;
border-radius: 0.5rem;
z-index: 9999;
font-size: 0.875rem; font-weight: 600;
} @media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.01ms;
animation-iteration-count: 1;
transition-duration: 0.01ms;
scroll-behavior: auto;
}
} @media print {
.ap-topbar,
.ap-header,
#ap-floating-cta,
#ap-cookie-consent,
#ap-contact-modal,
.ap-floating-cta,
.ap-cookie,
.ap-nav__hamburger { display: none; }
body { --ap-body-offset: 0; padding-top: 0; }
}@keyframes ap-fade-up {
from { opacity: 0; translate: 0 24px; }
to   { opacity: 1; translate: 0 0; }
}
@keyframes ap-fade-in {
from { opacity: 0; }
to   { opacity: 1; }
} [data-ap-reveal] {
animation: ap-fade-up linear both;
animation-timeline: view();
animation-range: entry 0% entry 30%;
} [data-ap-reveal][data-ap-delay="100"] { animation-delay: 100ms; }
[data-ap-reveal][data-ap-delay="200"] { animation-delay: 200ms; }
[data-ap-reveal][data-ap-delay="300"] { animation-delay: 300ms; }
[data-ap-reveal][data-ap-delay="400"] { animation-delay: 400ms; }
[data-ap-reveal][data-ap-delay="500"] { animation-delay: 500ms; }
[data-ap-reveal][data-ap-delay="600"] { animation-delay: 600ms; } [data-animate] {
animation: ap-fade-up linear both;
animation-timeline: view();
animation-range: entry 0% entry 30%;
} @supports (animation-delay: calc(sibling-index() * 1ms)) {
.ap-service-card,
.ap-reveal-stagger > * {
animation-delay: calc(sibling-index() * 80ms);
}
} .ap-header-wrapper {
container-type: scroll-state;
position: sticky;
top: 0;
z-index: 100;
}
@container scroll-state(stuck) {
.ap-header {
box-shadow: var(--shadow-md);
background-color: rgba(245, 242, 237, 0.96);
backdrop-filter: blur(12px);
}
}  @keyframes ap-float {
0%, 100% { transform: translateY(0); }
50%       { transform: translateY(-16px); }
}
@keyframes ap-float-alt {
0%, 100% { transform: translateY(0) rotate(0deg); }
50%       { transform: translateY(-12px) rotate(3deg); }
}
.ap-float      { animation: ap-float     4s ease-in-out infinite; }
.ap-float--alt { animation: ap-float-alt 5s ease-in-out infinite; } .ap-float2 { animation: ap-float-alt 6s ease-in-out infinite; animation-delay: -2s; } @keyframes ap-pulse-dot {
0%, 100% { transform: scale(1); opacity: 1; }
50%       { transform: scale(1.4); opacity: 0.7; }
}
.ap-pulse-dot { animation: ap-pulse-dot 2s ease-in-out infinite; } @keyframes ap-marquee {
0%   { transform: translateX(0); }
100% { transform: translateX(-50%); }
}
.ap-marquee-track       { animation: ap-marquee 30s linear infinite; }
.ap-marquee-track:hover { animation-play-state: paused; } @keyframes ap-fade-down {
from { opacity: 0; transform: translateY(-20px); }
to   { opacity: 1; transform: translateY(0); }
}
.ap-fade-down { animation: ap-fade-down 0.5s ease forwards; } @keyframes ap-scale-in {
from { opacity: 0; transform: scale(0.92); }
to   { opacity: 1; transform: scale(1); }
}
.ap-scale-in { animation: ap-scale-in 0.4s ease forwards; } @keyframes ap-badge-ring {
0%   { box-shadow: 0 0 0 0 rgba(148,163,184,0.5); }
70%  { box-shadow: 0 0 0 8px rgba(148,163,184,0); }
100% { box-shadow: 0 0 0 0 rgba(148,163,184,0); }
}
.ap-badge-ring { animation: ap-badge-ring 2.5s ease-out infinite; } @keyframes ap-shimmer {
0%   { background-position: 0% center; }
100% { background-position: 200% center; }
}
.ap-shimmer-text {
background-size: 200% auto;
animation: ap-shimmer 5s linear infinite;
} @keyframes ap-bg-pulse {
0%, 100% { opacity: 0.4; transform: scale(1); }
50%       { opacity: 0.8; transform: scale(1.1); }
}
.ap-bg-pulse { animation: ap-bg-pulse 3s ease-in-out infinite; } @keyframes ap-spin-rev { to { transform: rotate(-360deg); } }
.ap-spin-rev { animation: ap-spin-rev 15s linear infinite; } @keyframes ap-orbit-float {
0%, 100% { transform: translateY(0); }
50%       { transform: translateY(-8px); }
}
.ap-orbit-node            { animation: ap-orbit-float 4s ease-in-out infinite; }
.ap-orbit-node:nth-child(2) { animation-delay: 0.4s; }
.ap-orbit-node:nth-child(3) { animation-delay: 0.8s; }
.ap-orbit-node:nth-child(4) { animation-delay: 1.2s; }
.ap-orbit-node:nth-child(5) { animation-delay: 1.6s; }
.ap-orbit-node:nth-child(6) { animation-delay: 2.0s; } @keyframes ap-gradient-shift {
0%   { background-position: 0% 50%; }
50%  { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
}
.ap-hero-gradient {
background-size: 200% 200%;
animation: ap-gradient-shift 15s ease infinite;
} .ap-counter { transition: color var(--duration-normal); }
.ap-counter.counting { color: var(--ap-green-500); } .ap-nav-link::after {
content: '';
display: block;
height: 2px;
background: var(--ap-green-500);
transform: scaleX(0);
transform-origin: right;
transition: transform 0.25s ease;
}
.ap-nav-link:hover::after,
.ap-nav-link.active::after {
transform: scaleX(1);
transform-origin: left;
} #ap-floating-cta { transition: opacity var(--duration-slow) ease, transform var(--duration-slow) ease; }
#ap-floating-cta.ap-visible { opacity: 1; transform: translateY(0); }
#ap-cookie-consent { transition: transform var(--duration-slow) var(--ease-in-out); }
#ap-cookie-consent.ap-visible { transform: translateY(0); }
#ap-contact-modal { transition: opacity var(--duration-normal) ease; }
#ap-modal-backdrop { transition: opacity var(--duration-normal) ease; }  body:has(.ap-mobile-menu.ap-open) { overflow: hidden; }
body:has(.ap-contact-modal.ap-open) { overflow: hidden; } .ap-form__group:has(input:not(:placeholder-shown)) .ap-form__label,
.ap-form__group:has(textarea:not(:placeholder-shown)) .ap-form__label {
transform: translateY(-1.5rem);
font-size: var(--text-xs);
color: var(--color-obsidian);
} .ap-faq__item[open] .ap-faq__icon { transform: rotate(45deg); } .ap-gauge-path {
transition: stroke-dashoffset var(--duration-slower) var(--ease-out-expo);
}
.ap-gauge-path.is-filled { stroke-dashoffset: var(--gauge-offset, 0); } @media (prefers-reduced-motion: reduce) {
.ap-reveal,
.ap-float,
.ap-float--alt,
.ap-float2,
.ap-pulse-dot,
.ap-marquee-track,
.ap-hero-gradient,
.ap-bg-pulse,
.ap-badge-ring,
.ap-shimmer-text,
.ap-spin-rev,
.ap-orbit-node,
.ap-counter-up,
[class*="ap-animate"] {
animation: none;
animation-duration: 0.01ms;
animation-iteration-count: 1;
transition-duration: 0.01ms;
animation-timeline: auto;
animation-range: normal;
}
}.ap-container,
.ap-container-fluid {
width: 100%;
margin-inline: auto;
padding-inline: var(--ap-container-padding);
}
.ap-container {
max-width: var(--ap-container-max);
}
.ap-container-fluid {
max-width: none;
} .ap-skip-link {
position: absolute; left: -9999px; top: auto;
width: 1px; height: 1px; overflow: hidden;
}
.ap-skip-link:focus {
left: 8px; top: 8px; width: auto; height: auto;
padding: 0.5rem 1rem; background: #0f172a; color: #fff;
border-radius: 0.5rem; z-index: 9999;
font-size: 0.875rem; font-weight: 600;
}  #ap-floating-cta {
position: fixed; bottom: 1.5rem; right: 1.5rem; z-index: 90;
display: flex; flex-direction: column; gap: 0.75rem;
opacity: 0; transform: translateY(1rem);
transition: opacity 0.4s ease, transform 0.4s ease;
pointer-events: none;
}
#ap-floating-cta.ap-visible { opacity: 1; transform: translateY(0); pointer-events: auto; } #ap-cookie-consent {
position: fixed; bottom: 0; left: 0; right: 0; z-index: 80;
transform: translateY(100%); transition: transform 0.4s cubic-bezier(0.4,0,0.2,1);
display: none;
}
#ap-cookie-consent.ap-visible { display: block; transform: translateY(0); } #ap-contact-modal {
position: fixed; inset: 0; z-index: 400;
display: none; align-items: center; justify-content: center; padding: 1rem;
}
#ap-contact-modal.ap-open { display: flex; }
#ap-modal-backdrop {
position: absolute; inset: 0;
background: rgba(15,23,42,0.7);
backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
}
.ap-modal__box {
position: relative; width: 100%; max-width: 540px;
max-height: 90vh; overflow-y: auto;
background: #fff; border-radius: 1.5rem;
box-shadow: 0 32px 64px rgba(15,23,42,0.25); z-index: 1;
} .ap-form-input, .ap-form-select, .ap-form-textarea {
width: 100%; padding: 0.75rem 1rem;
border: 1px solid #e2e8f0; border-radius: 0.75rem;
font-size: 0.875rem; color: #0f172a; background: #fff;
font-family: inherit; line-height: 1.5; outline: none;
transition: border-color 0.2s, box-shadow 0.2s; -webkit-appearance: none;
}
.ap-form-input:focus, .ap-form-select:focus, .ap-form-textarea:focus {
border-color: #94a3b8; box-shadow: 0 0 0 3px rgba(148,163,184,0.15);
}
.ap-form-input.error, .ap-form-select.error, .ap-form-textarea.error { border-color: #f87171; }
.ap-hp-field { position: absolute; left: -9999px; visibility: hidden; } .ap-pagination {
display: flex; justify-content: center; flex-wrap: wrap; gap: 0.5rem;
}
.ap-pagination__list { display: flex; flex-wrap: wrap; gap: 0.5rem; list-style: none; margin: 0; padding: 0; }
.ap-pagination a, .ap-pagination span,
.ap-pagination__item a, .ap-pagination__item span {
display: inline-flex; align-items: center; justify-content: center;
min-width: 2.5rem; height: 2.5rem; padding: 0 0.75rem;
border: 1px solid #e2e8f0; border-radius: 0.625rem;
font-size: 0.875rem; font-weight: 500; color: #334155;
text-decoration: none; transition: background 0.2s, border-color 0.2s;
}
.ap-pagination a:hover, .ap-pagination__item a:hover { background: #f1f5f9; border-color: #cbd5e1; }
.ap-pagination .current, .ap-pagination__item .current { background: #0f172a; color: #fff; border-color: #0f172a; } .ap-page-header { background: linear-gradient(to bottom right, var(--color-slate-100), #ffffff, var(--color-slate-100)); border-bottom: 1px solid var(--color-border); }
.ap-page-header__inner { padding-block: var(--space-16); }
.ap-page-header__content { max-width: 48rem; }
.ap-page-header__title {
margin-top: var(--space-4);
margin-bottom: var(--space-4);
font-family: var(--font-display);
font-weight: 400;
font-size: clamp(2.25rem, 4vw, 3rem);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
color: var(--color-text);
}
.ap-page-header__subtitle {
font-size: var(--text-xl);
font-weight: 300;
line-height: var(--leading-loose);
color: var(--color-text-muted);
max-width: 52ch;
}
.ap-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 0.375rem; font-size: 0.8125rem; color: #64748b; }
.ap-breadcrumb a { color: #64748b; text-decoration: none; transition: color 0.2s; }
.ap-breadcrumb a:hover { color: #0f172a; }
.ap-breadcrumb-sep { color: #cbd5e1; } .search-form { display: flex; gap: 0.5rem; }
.search-form input[type="search"] {
flex: 1; border: 1px solid #e2e8f0; border-radius: 0.75rem;
padding: 0.75rem 1rem; font-size: 0.875rem; outline: none;
font-family: inherit; transition: border-color 0.2s;
}
.search-form input[type="search"]:focus { border-color: #94a3b8; }
.search-form button[type="submit"] {
background: #0f172a; color: #fff; border: none; border-radius: 0.75rem;
padding: 0.75rem 1.25rem; font-size: 0.875rem; font-weight: 500;
cursor: pointer; font-family: inherit; transition: background 0.2s;
}
.search-form button[type="submit"]:hover { background: #1e293b; }  [data-ap-reveal] {
opacity: 0;
transform: translateY(28px);
transition: opacity 0.7s ease, transform 0.7s ease;
}
[data-ap-reveal].is-visible { opacity: 1; transform: translateY(0); }
[data-ap-reveal="left"]  { transform: translateX(-32px); }
[data-ap-reveal="left"].is-visible  { transform: translateX(0); }
[data-ap-reveal="right"] { transform: translateX(32px); }
[data-ap-reveal="right"].is-visible { transform: translateX(0); }
[data-ap-reveal="scale"] { transform: scale(0.88); }
[data-ap-reveal="scale"].is-visible { transform: scale(1); }
[data-ap-delay="100"] { transition-delay: 0.1s; }
[data-ap-delay="200"] { transition-delay: 0.2s; }
[data-ap-delay="300"] { transition-delay: 0.3s; }
[data-ap-delay="400"] { transition-delay: 0.4s; }
[data-ap-delay="500"] { transition-delay: 0.5s; }
[data-ap-delay="600"] { transition-delay: 0.6s; }
[data-ap-delay="700"] { transition-delay: 0.7s; }
[data-ap-delay="800"] { transition-delay: 0.8s; }
[data-ap-delay="900"] { transition-delay: 0.9s; } @keyframes ap-hero-badge-in { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:translateY(0); } }
@keyframes ap-hero-title-in { from { opacity:0; transform:translateY(32px); } to { opacity:1; transform:translateY(0); } }
.ap-hero-badge    { animation: ap-hero-badge-in 0.8s ease both; }
.ap-hero-title    { animation: ap-hero-title-in 1s ease both; }
.ap-hero-title-2  { animation: ap-hero-title-in 1s 0.2s ease both; }
.ap-hero-title-3  { animation: ap-hero-title-in 1s 0.4s ease both; }
.ap-hero-sub      { animation: ap-hero-title-in 1s 0.4s ease both; }
.ap-hero-cta      { animation: ap-hero-title-in 1s 0.6s ease both; }
.ap-hero-vis      { animation: ap-hero-title-in 1s 0.5s ease both; } @keyframes ap-float  { 0%,100%{transform:translateY(0);}  50%{transform:translateY(-8px);} }
@keyframes ap-float2 { 0%,100%{transform:translateY(0) translateX(0);} 50%{transform:translateY(-6px) translateX(5px);} }
.ap-float  { animation: ap-float  4s ease-in-out infinite; }
.ap-float2 { animation: ap-float2 5s ease-in-out 1s infinite; }
.ap-float3 { animation: ap-float  3.5s ease-in-out 0.5s infinite; } @keyframes ap-bg-pulse {
0%,100% { transform: scale(0) rotate(0deg);   opacity: 0; }
50%     { transform: scale(1) rotate(180deg);  opacity: 1; }
}
.ap-bg-pulse { animation: ap-bg-pulse 2s ease-in-out infinite; } @keyframes ap-spin-slow { to { transform: rotate(360deg); } }
@keyframes ap-spin-rev  { to { transform: rotate(-360deg); } }
.ap-spin-slow { animation: ap-spin-slow 20s linear infinite; }
.ap-spin-rev  { animation: ap-spin-rev  15s linear infinite; } @keyframes ap-pulse-live {
0%,100% { transform:scale(1); opacity:1; }
50%      { transform:scale(1.6); opacity:0.4; }
}
.ap-pulse-live { animation: ap-pulse-live 2s ease-in-out infinite; } @keyframes ap-pulse-ring {
0%   { transform:scale(1);   opacity:0.5; }
100% { transform:scale(1.5); opacity:0; }
}
.ap-node-pulse::after {
content:''; position:absolute; inset:-6px; border-radius:inherit;
border:2px solid rgba(255,255,255,0.3);
animation:ap-pulse-ring 2s ease-out infinite;
} .ap-bar-track { background:#e2e8f0; border-radius:9999px; overflow:hidden; }
.ap-bar-fill  {
height:100%; border-radius:9999px;
width: 0;
transition: width 1.2s cubic-bezier(.4,0,.2,1);
}
.ap-bar-fill.is-filled { width: var(--bar-w, 0%); } .ap-gauge-path {
stroke-dashoffset: 126;
transition: stroke-dashoffset 2s cubic-bezier(.4,0,.2,1) 1s;
}
.ap-gauge-path.is-filled { stroke-dashoffset: var(--gauge-offset, 0); } @keyframes ap-count-in { from{opacity:0;transform:scale(.6);} to{opacity:1;transform:scale(1);} }
.ap-counter-val { animation: ap-count-in 0.6s ease both; } @keyframes ap-blink { 0%,100%{opacity:1;} 50%{opacity:0;} }
.ap-cursor { animation: ap-blink 1s step-end infinite; } .ap-faq-answer {
max-height: 0; overflow: hidden;
transition: max-height 0.4s ease, padding 0.4s ease;
}
.ap-faq-item.is-open .ap-faq-answer { max-height: 400px; }
.ap-faq-chevron { transition: transform 0.3s ease; }
.ap-faq-item.is-open .ap-faq-chevron { transform: rotate(180deg); } .ap-tab-panel { display: none; }
.ap-tab-panel.is-active { display: block; }
.ap-tab-btn.is-active { background: #0f172a; color: #fff; } .ap-orbit-node {
position: absolute;
left: 50%; top: 50%;
transform: translate(-50%,-50%) translate(var(--nx,0), var(--ny,0));
}
@keyframes ap-orbit-float {
0%,100% { transform: translate(-50%,-50%) translate(var(--nx,0), var(--ny,0)); }
50%     { transform: translate(-50%,-50%) translate(calc(var(--nx,0) + 5px), calc(var(--ny,0) + 5px)); }
}
.ap-orbit-node { animation: ap-orbit-float 4s ease-in-out infinite; }
.ap-orbit-node:nth-child(2) { animation-delay: 0.4s; }
.ap-orbit-node:nth-child(3) { animation-delay: 0.8s; }
.ap-orbit-node:nth-child(4) { animation-delay: 1.2s; }
.ap-orbit-node:nth-child(5) { animation-delay: 1.6s; }
.ap-orbit-node:nth-child(6) { animation-delay: 2.0s; } @keyframes ap-orbit-x-fwd {
0%,100%{transform:translate(-50%,-50%);opacity:0.3;}
25%{transform:translate(calc(-50% + 120px),-50%);opacity:0.7;}
50%{transform:translate(-50%,-50%);opacity:0.3;}
75%{transform:translate(calc(-50% - 120px),-50%);opacity:0.7;}
}
@keyframes ap-orbit-y-fwd {
0%,100%{transform:translate(-50%,-50%);opacity:0.3;}
25%{transform:translate(-50%,calc(-50% + 120px));opacity:0.7;}
50%{transform:translate(-50%,-50%);opacity:0.3;}
75%{transform:translate(-50%,calc(-50% - 120px));opacity:0.7;}
}
@keyframes ap-orbit-x-rev {
0%,100%{transform:translate(-50%,-50%);opacity:0.3;}
25%{transform:translate(calc(-50% - 120px),-50%);opacity:0.7;}
50%{transform:translate(-50%,-50%);opacity:0.3;}
75%{transform:translate(calc(-50% + 120px),-50%);opacity:0.7;}
}
@keyframes ap-orbit-y-rev {
0%,100%{transform:translate(-50%,-50%);opacity:0.3;}
25%{transform:translate(-50%,calc(-50% - 120px));opacity:0.7;}
50%{transform:translate(-50%,-50%);opacity:0.3;}
75%{transform:translate(-50%,calc(-50% + 120px));opacity:0.7;}
}
.ap-orbit-secondary { position:absolute; left:50%; top:50%; width:8px; height:8px; border-radius:50%; } @keyframes ap-particle {
0%   { opacity:0; transform:translate(-50%,-50%) scale(0); }
40%  { opacity:1; transform:translate(calc(-50% + var(--px,0)), calc(-50% + var(--py,0))) scale(1.2); }
100% { opacity:0; transform:translate(calc(-50% + var(--px2,0)), calc(-50% + var(--py2,0))) scale(0); }
}
.ap-particle {
position:absolute; left:50%; top:50%;
width:8px; height:8px; border-radius:50%;
animation: ap-particle 4s ease-in-out infinite;
} @keyframes ap-bar-up { from { height:0; } to { height: var(--bar-h, 0); } }
.ap-chart-bar { animation: ap-bar-up 1s cubic-bezier(.4,0,.2,1) both; } @keyframes ap-fade-rise { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }
.ap-fade-rise { animation: ap-fade-rise 0.5s ease-out both; } @keyframes ap-cta-glow { 0%,100% { box-shadow:0 0 0 rgba(255,255,255,0); } 50% { box-shadow:0 0 28px rgba(255,255,255,0.12); } }
.ap-cta-glow { animation: ap-cta-glow 3s ease-in-out infinite; } @keyframes ap-badge-ring { 0% { box-shadow:0 0 0 0 rgba(148,163,184,0.5); } 70% { box-shadow:0 0 0 8px rgba(148,163,184,0); } 100% { box-shadow:0 0 0 0 rgba(148,163,184,0); } }
.ap-badge-ring { animation: ap-badge-ring 2.5s ease-out infinite; } @keyframes ap-shimmer { 0% { background-position:-200% center; } 100% { background-position:200% center; } }
.ap-shimmer-text { background-size:200% auto; animation: ap-shimmer 5s linear infinite; } .ap-service-card {
transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.ap-service-card:hover {
transform: translateY(-4px);
box-shadow: 0 12px 40px rgba(15,23,42,0.12);
} .wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 0.875rem; color: #64748b; text-align: center; padding: 0.5rem 0; }
.alignleft { float: left; margin: 0 1.5rem 1rem 0; }
.alignright { float: right; margin: 0 0 1rem 1.5rem; }
.aligncenter { display: block; margin: 0 auto 1rem; } .ap-btn-hover {
position: relative;
overflow: hidden;
}
.ap-btn-hover::after {
content: '';
position: absolute;
inset: 0;
background: rgba(255,255,255,0.06);
opacity: 0;
transition: opacity 0.2s;
}
.ap-btn-hover:hover::after { opacity: 1; } .ap-main > section:not(:first-child) {
content-visibility: auto;
contain-intrinsic-size: 0 600px;
} section[id], article[id] {
scroll-margin-top: calc(var(--ap-topbar-h, 38px) + var(--ap-header-h, 72px) + 24px);
} :focus-visible {
outline: 2px solid var(--ap-green-500);
outline-offset: 3px;
border-radius: 3px;
}
.ap-btn:focus-visible, button:focus-visible {
outline: 2px solid var(--ap-green-500);
outline-offset: 2px;
}
a:focus-visible {
outline: 2px solid var(--ap-green-500);
outline-offset: 3px;
border-radius: 2px;
text-decoration: underline;
} @media (max-width: 767px) {
#hero .grid { grid-template-columns: 1fr; }
#hero .min-h-\[88vh\] { min-height: auto; padding-top: 3rem; padding-bottom: 3rem; }
#hero h1 { font-size: 2rem; line-height: 1.2; }
#hero .text-xl { font-size: 1rem; line-height: 1.6; }
} .ap-section-tag {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.375rem 1rem;
background: var(--ap-green-50);
border: 1px solid #a7f3d0;
border-radius: 9999px;
font-size: 0.8125rem;
font-weight: 600;
color: #15803d;
letter-spacing: 0.01em;
margin-bottom: 1.5rem;
}
.ap-section-title {
font-size: clamp(1.875rem, 4vw, 3.75rem);
font-weight: 300;
line-height: 1.15;
letter-spacing: -0.02em;
color: var(--ap-slate-900);
}
.ap-section-title strong {
font-weight: 700;
color: var(--ap-slate-900);
}
.ap-section-desc {
font-size: 1.125rem;
line-height: 1.75;
color: var(--ap-slate-600);
max-width: 52ch;
} .ap-card {
background: #fff;
border: 1px solid var(--ap-slate-200);
border-radius: 1rem;
transition: transform 0.22s cubic-bezier(.4,0,.2,1),
box-shadow 0.22s cubic-bezier(.4,0,.2,1),
border-color 0.22s;
}
.ap-card:hover {
transform: translateY(-3px);
box-shadow: 0 16px 40px rgba(15,23,42,0.09);
border-color: var(--ap-slate-200);
}
.ap-card--featured {
border-color: var(--ap-green-400);
box-shadow: 0 0 0 3px rgba(34,197,94,0.1);
}
.ap-card--featured:hover {
box-shadow: 0 16px 40px rgba(34,197,94,0.15), 0 0 0 3px rgba(34,197,94,0.15);
} .ap-badge {
display: inline-flex;
align-items: center;
gap: 0.25rem;
padding: 0.25rem 0.75rem;
border-radius: 9999px;
font-size: 0.75rem;
font-weight: 600;
letter-spacing: 0.01em;
}
.ap-badge--emerald { background: var(--ap-green-50); color: #15803d; border: 1px solid #a7f3d0; }
.ap-badge--slate   { background: var(--ap-slate-100); color: var(--ap-slate-700); border: 1px solid var(--ap-slate-200); }
.ap-badge--blue    { background: #eff6ff; color: #1d4ed8; border: 1px solid #bfdbfe; }
.ap-badge--dark    { background: var(--ap-slate-900); color: #fff; } .ap-stats-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1.5rem;
}
@media (min-width: 640px) {
.ap-stats-grid { grid-template-columns: repeat(4, 1fr); }
}
.ap-stat-item {
text-align: center;
padding: 1.5rem 1rem;
background: #fff;
border: 1px solid var(--ap-slate-100);
border-radius: 1rem;
transition: box-shadow 0.2s;
}
.ap-stat-item:hover { box-shadow: 0 8px 24px rgba(15,23,42,0.07); }
.ap-stat-item__number {
font-size: 2rem;
font-weight: 700;
color: var(--ap-slate-900);
letter-spacing: -0.03em;
line-height: 1.1;
}
.ap-stat-item__label {
font-size: 0.8125rem;
color: var(--ap-slate-500);
margin-top: 0.375rem;
} .ap-img-cover {
position: relative;
overflow: hidden;
}
.ap-img-cover img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.5s cubic-bezier(.4,0,.2,1);
}
.ap-img-cover:hover img { transform: scale(1.04); }  .ap-footer {
background-color: #0f172a; color: #fff;
position: relative;
overflow: hidden;
} .ap-footer__cta-band::before {
content: '';
position: absolute;
inset: 0;
background-image: var(--background-gradient);
pointer-events: none;
}
.ap-footer__cta-btn {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.75rem 1.5rem;
border-radius: 0.75rem;
font-size: 0.9375rem;
font-weight: 600;
text-decoration: none;
transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
white-space: nowrap;
}
.ap-footer__cta-btn:hover {
transform: translateY(-2px);
}
.ap-footer__cta-btn--primary {
background-color: #10b981;
color: #fff;
box-shadow: 0 4px 20px rgba(16,185,129,0.35);
}
.ap-footer__cta-btn--primary:hover {
background-color: #059669;
box-shadow: 0 6px 28px rgba(16,185,129,0.45);
color: #fff;
}
.ap-footer__cta-btn--whatsapp {
background-color: rgba(255,255,255,0.08);
color: #fff;
border: 1px solid rgba(255,255,255,0.15);
backdrop-filter: blur(8px);
}
.ap-footer__cta-btn--whatsapp:hover {
background-color: rgba(255,255,255,0.14);
color: #fff;
}  .ap-footer__logo {
display: inline-flex;
align-items: center;
margin-bottom: 1.25rem;
text-decoration: none;
}
.ap-footer__logo img { height: 2.5rem; width: auto; }
.ap-footer__logo-text {
font-size: 1.5rem;
font-weight: 300;
color: #fff;
letter-spacing: -0.025em;
} .ap-footer__heading {
font-size: 0.8125rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.1em;
color: #94a3b8; margin-bottom: 1.25rem;
padding-bottom: 0.625rem;
border-bottom: 1px solid rgba(255,255,255,0.06);
} .ap-footer__nav-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.ap-footer__nav-link {
display: flex;
align-items: center;
gap: 0.375rem;
font-size: 0.875rem;
color: #64748b; text-decoration: none;
transition: color 0.2s ease, gap 0.2s ease;
padding: 0.125rem 0;
}
.ap-footer__nav-link:hover {
color: #f1f5f9; gap: 0.625rem;
}
.ap-footer__nav-arrow {
width: 0.875rem;
height: 0.875rem;
flex-shrink: 0;
opacity: 0.4;
transition: opacity 0.2s ease, transform 0.2s ease;
}
.ap-footer__nav-link:hover .ap-footer__nav-arrow {
opacity: 1;
transform: translateX(2px);
} .ap-footer__contact {}
.ap-footer__contact-item {
display: flex;
align-items: flex-start;
gap: 0.625rem;
color: #64748b;
text-decoration: none;
transition: color 0.2s ease;
line-height: 1.5;
}
a.ap-footer__contact-item:hover { color: #e2e8f0; }
.ap-footer__contact-icon {
display: flex;
align-items: center;
justify-content: center;
width: 1.75rem;
height: 1.75rem;
min-width: 1.75rem;
background-color: rgba(255,255,255,0.06);
border-radius: 0.5rem;
border: 1px solid rgba(255,255,255,0.07);
margin-top: 0.0625rem;
}
.ap-footer__contact-icon svg {
width: 0.875rem;
height: 0.875rem;
color: var(--color-accent);
} .ap-footer__social {
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
list-style: none;
padding: 0;
margin: 0;
}
.ap-footer__social-btn {
display: flex;
align-items: center;
justify-content: center;
width: 2.375rem;
height: 2.375rem;
background-color: rgba(255,255,255,0.06);
border: 1px solid rgba(255,255,255,0.09);
border-radius: 0.625rem;
color: #94a3b8;
text-decoration: none;
transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}
.ap-footer__social-btn:hover {
background-color: #10b981;
border-color: #10b981;
color: #fff;
transform: translateY(-3px);
}
.ap-footer__social-icon { display: flex; align-items: center; justify-content: center; }
.ap-footer__social-icon svg { width: 1rem; height: 1rem; } .ap-footer__trust {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
}
.ap-footer__trust-item {
display: flex;
align-items: center;
gap: 0.375rem;
font-size: 0.75rem;
color: #475569;
background-color: rgba(255,255,255,0.04);
border: 1px solid rgba(255,255,255,0.06);
border-radius: 9999px;
padding: 0.25rem 0.75rem;
} .ap-footer__hours {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.ap-footer__hours li {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 0.8125rem;
color: #475569;
padding: 0.375rem 0;
border-bottom: 1px solid rgba(255,255,255,0.04);
}
.ap-footer__hours li:last-child { border-bottom: none; }
.ap-footer__closed {
font-size: 0.75rem;
color: #ef4444;
background-color: rgba(239,68,68,0.08);
border-radius: 9999px;
padding: 0.125rem 0.5rem;
} .ap-footer__mini-contact {
background-color: rgba(255,255,255,0.03);
border: 1px solid rgba(255,255,255,0.06);
border-radius: 0.75rem;
padding: 1rem;
}
.ap-footer__mini-contact-link {
display: flex;
align-items: center;
gap: 0.625rem;
text-decoration: none;
transition: opacity 0.2s ease;
}
.ap-footer__mini-contact-link:hover { opacity: 0.85; }
.ap-footer__mini-contact-icon {
display: flex;
align-items: center;
justify-content: center;
width: 1.75rem;
height: 1.75rem;
min-width: 1.75rem;
border-radius: 0.375rem;
flex-shrink: 0;
} .ap-footer__divider {
margin-top: 2.5rem;
border-top: 1px solid rgba(255,255,255,0.05);
background: linear-gradient(to right, transparent, rgba(255,255,255,0.02), transparent);
} @media (max-width: 1023px) {
.ap-footer__cta-band .flex { flex-direction: column; text-align: center; }
.ap-footer__cta-band .lg\:text-left { text-align: center; }
}
@media (max-width: 767px) {
.ap-footer__trust { justify-content: flex-start; }
.ap-footer__hours li { font-size: 0.75rem; }
.ap-footer__mini-contact { margin-top: 0; }
.ap-footer__divider .flex { flex-direction: column; gap: 0.75rem; text-align: center; }
}
@media (max-width: 639px) {
.ap-footer__cta-btn { width: 100%; justify-content: center; }
} .ap-form-group { display: flex; flex-direction: column; gap: 0.375rem; }
.ap-form-label {
font-size: 0.875rem;
font-weight: 500;
color: var(--ap-slate-700);
}
.ap-form-label .ap-required {
color: #ef4444;
margin-left: 0.25rem;
}
.ap-form-input,
.ap-form-select,
.ap-form-textarea {
width: 100%;
padding: 0.75rem 1rem;
font-size: 0.9375rem;
border: 1.5px solid var(--ap-slate-200);
border-radius: 0.75rem;
background: #fff;
color: var(--ap-slate-900);
transition: border-color 0.2s, box-shadow 0.2s;
font-family: inherit;
-webkit-appearance: none;
}
.ap-form-input:focus,
.ap-form-select:focus,
.ap-form-textarea:focus {
outline: none;
border-color: var(--ap-green-500);
box-shadow: 0 0 0 3px rgba(34,197,94,0.12);
}
.ap-form-input.is-error,
.ap-form-textarea.is-error { border-color: #ef4444; }
.ap-form-error {
font-size: 0.8125rem;
color: #ef4444;
display: flex;
align-items: center;
gap: 0.25rem;
}
.ap-form-textarea { min-height: 140px; resize: vertical; }
.ap-form-select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' stroke='%2364748b' stroke-width='1.5' fill='none'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 1rem center; padding-right: 2.5rem; }
.ap-form-success {
display: flex;
align-items: flex-start;
gap: 0.75rem;
padding: 1rem 1.25rem;
background: var(--ap-green-50);
border: 1px solid #a7f3d0;
border-radius: 0.75rem;
color: #15803d;
font-size: 0.9375rem;
} .ap-breadcrumb {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 0.375rem;
font-size: 0.8125rem;
color: var(--ap-slate-500);
padding: 1rem 0;
}
.ap-breadcrumb a {
color: var(--ap-slate-500);
text-decoration: none;
transition: color 0.15s;
}
.ap-breadcrumb a:hover { color: var(--ap-slate-900); }
.ap-breadcrumb__sep { color: var(--ap-slate-300); }
.ap-breadcrumb__current { color: var(--ap-slate-700); font-weight: 500; } .ap-page-header {
padding: 4rem 0 3rem;
background: linear-gradient(135deg, var(--ap-slate-50) 0%, #fff 60%, var(--ap-green-50) 100%);
border-bottom: 1px solid var(--ap-slate-100);
}
@media (max-width: 767px) {
.ap-page-header { padding: 2.5rem 0 2rem; }
.ap-page-header h1 { font-size: 2rem; }
} .ap-pagination {
display: flex;
align-items: center;
justify-content: center;
gap: 0.375rem;
flex-wrap: wrap;
padding: 2rem 0;
}
.ap-pagination .page-numbers {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 40px;
height: 40px;
padding: 0 0.75rem;
font-size: 0.875rem;
font-weight: 500;
color: var(--ap-slate-700);
border: 1px solid var(--ap-slate-200);
border-radius: 0.625rem;
text-decoration: none;
transition: all 0.15s;
}
.ap-pagination .page-numbers:hover { background: var(--ap-slate-100); border-color: var(--ap-slate-300); }
.ap-pagination .page-numbers.current { background: var(--ap-slate-900); color: #fff; border-color: var(--ap-slate-900); }
.ap-pagination .page-numbers.dots { border: none; cursor: default; } @media (max-width: 1023px) { .ap-topbar__tagline { display: none; }
}
@media (max-width: 639px) { .ap-container { padding-left: 1rem; padding-right: 1rem; } .ap-header .ap-mega { display: none; } #ap-floating-cta { bottom: 1rem; right: 1rem; gap: 0.5rem; } #ap-cookie-consent .ap-container { padding: 1rem; }
} .ap-meta-box .ap-field-group { margin-bottom: 1.25rem; }
.ap-meta-box label { display: block; font-weight: 600; margin-bottom: 0.375rem; font-size: 0.875rem; color: #1e293b; }
.ap-meta-box input[type="text"], .ap-meta-box input[type="url"], .ap-meta-box input[type="number"],
.ap-meta-box select, .ap-meta-box textarea {
width: 100%; max-width: 540px; padding: 0.5rem 0.75rem;
border: 1px solid #d1d5db; border-radius: 0.375rem; font-size: 0.875rem;
}
.ap-meta-box textarea { min-height: 120px; resize: vertical; }
.ap-repeater { border: 1px solid #e5e7eb; border-radius: 0.5rem; overflow: hidden; margin-bottom: 0.75rem; }
.ap-repeater-row { padding: 0.75rem 1rem; background: #f9fafb; border-bottom: 1px solid #e5e7eb; display: flex; align-items: center; gap: 0.75rem; }
.ap-repeater-row:last-child { border-bottom: none; }
.ap-repeater-row input { flex: 1; max-width: none; }
.ap-repeater-row .ap-remove-row { background: #fee2e2; color: #b91c1c; border: none; border-radius: 0.375rem; padding: 0.25rem 0.625rem; cursor: pointer; font-size: 0.8125rem; font-weight: 600; }
.ap-add-row { background: #f0fdf4; color: #15803d; border: 1px dashed #86efac; border-radius: 0.5rem; padding: 0.5rem 1rem; cursor: pointer; font-size: 0.8125rem; font-weight: 500; width: 100%; text-align: left; } body .editor-styles-wrapper {
font-family: var(--font-body);
font-size: var(--text-base);
line-height: var(--leading-normal);
color: var(--color-text);
background-color: var(--color-bg);
padding: var(--space-8);
}
.editor-styles-wrapper h1,
.editor-styles-wrapper h2 {
font-family: var(--font-display);
font-weight: 600;
letter-spacing: var(--tracking-tight);
color: var(--color-obsidian);
}
.editor-styles-wrapper h3,
.editor-styles-wrapper h4 {
font-family: var(--font-heading);
font-weight: 400;
color: var(--color-obsidian);
}
.editor-styles-wrapper p {
font-family: var(--font-body);
line-height: var(--leading-normal);
color: var(--color-text);
}
.editor-styles-wrapper a {
color: var(--color-accent);
text-decoration: underline;
}
.editor-styles-wrapper .ap-btn--primary {
background-color: var(--color-accent);
color: var(--color-obsidian);
padding: var(--space-3) var(--space-8);
border-radius: var(--radius-sm);
font-weight: 500;
letter-spacing: var(--tracking-wide);
text-transform: uppercase;
display: inline-flex;
align-items: center;
}
.editor-styles-wrapper .ap-service-card {
border: 1px solid var(--color-border);
border-radius: var(--radius-lg);
padding: var(--space-8);
background: #fff;
}
.editor-styles-wrapper .ap-service-card__title {
font-family: var(--font-display);
font-weight: 600;
color: var(--color-obsidian);
}  .ap-hero-orb--top {
position: absolute;
top: -10rem;
right: 0;
width: min(700px, 90vw);
height: min(700px, 90vw);
border-radius: 50%;
pointer-events: none;
background: radial-gradient(circle, rgba(16,185,129,0.10) 0%, transparent 65%);
}
.ap-hero-orb--bottom {
position: absolute;
bottom: -10rem;
left: 0;
width: min(500px, 70vw);
height: min(500px, 70vw);
border-radius: 50%;
pointer-events: none;
background: radial-gradient(circle, rgba(16,185,129,0.06) 0%, transparent 70%);
} .ap-hero-orb--top.ap-hero-orb--indigo {
background: radial-gradient(circle, rgba(99,102,241,0.12) 0%, transparent 65%);
}
.ap-hero-orb--bottom.ap-hero-orb--indigo {
background: radial-gradient(circle, rgba(99,102,241,0.08) 0%, transparent 70%);
} .ap-badge-glass {
background: rgba(255, 255, 255, 0.08);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
} .ap-glass-card {
background: rgba(255, 255, 255, 0.07);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
} .ap-glass-btn {
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
} span.ap-bg-pulse {
position: absolute;
left: var(--pos-x, 50%);
top: var(--pos-y, 50%);
animation-delay: var(--anim-delay, 0s);
} .ap-bg-pulse--1 { --pos-x: 7%;  --pos-y: 18%; --anim-delay: 0s; }
.ap-bg-pulse--2 { --pos-x: 22%; --pos-y: 68%; --anim-delay: 0.5s; }
.ap-bg-pulse--3 { --pos-x: 40%; --pos-y: 32%; --anim-delay: 0.9s; }
.ap-bg-pulse--4 { --pos-x: 70%; --pos-y: 14%; --anim-delay: 0.6s; }
.ap-bg-pulse--5 { --pos-x: 84%; --pos-y: 55%; --anim-delay: 1.1s; }
.ap-bg-pulse--6 { --pos-x: 55%; --pos-y: 80%; --anim-delay: 1.3s; }
.ap-bg-pulse--7 { --pos-x: 13%; --pos-y: 48%; --anim-delay: 0.3s; }
.ap-bg-pulse--8 { --pos-x: 90%; --pos-y: 28%; --anim-delay: 0.8s; } .ap-float-dot {
position: absolute;
left: var(--pos-x);
top: var(--pos-y);
} .ap-grid-bg {
background-image:
linear-gradient(rgba(148,163,184,0.05) 1px, transparent 1px),
linear-gradient(90deg, rgba(148,163,184,0.05) 1px, transparent 1px);
background-size: 72px 72px;
} .ap-hp-field {
position: absolute;
left: -9999px;
width: 1px;
height: 1px;
overflow: hidden;
} .ap-gradient-text-indigo {
background: linear-gradient(to right, #a5b4fc, #e2e8f0);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
} .ap-badge-gradient--green {
background: linear-gradient(135deg, #059669, #10b981);
}
.ap-badge-gradient--indigo {
background: linear-gradient(135deg, #4f46e5, #7c3aed);
} .ap-float-card {
animation-delay: var(--anim-delay, 0s);
} .ap-hero-orb--top.ap-hero-orb--amber {
background: radial-gradient(circle, rgba(245,158,11,0.10) 0%, transparent 65%);
}
.ap-hero-orb--bottom.ap-hero-orb--amber {
background: radial-gradient(circle, rgba(245,158,11,0.07) 0%, transparent 70%);
}
.ap-hero-orb--ellipse-amber {
position: absolute;
inset: -1.25rem;
border-radius: 1.5rem;
pointer-events: none;
background: radial-gradient(ellipse at 65% 45%,
rgba(245,158,11,0.18) 0%,
rgba(251,191,36,0.06) 50%,
transparent 70%);
}
.ap-badge-amber {
background: rgba(245,158,11,0.15);
border: 1px solid rgba(251,191,36,0.35);
color: #fde68a;
} .ap-badge-gradient--soft-indigo {
background: linear-gradient(to bottom left, rgba(199,210,254,0.3), transparent);
} .ap-bar-fill {
width: var(--bar-w, var(--bar-width, 0%));
} .ap-chart-label { font-size: 9px; }
.ap-amber-ring { border: 1px solid rgba(245,158,11,0.12); }
.ap-relative-z1 { position: relative; z-index: 1; }
.ap-badge-gradient--amber-bright { background: linear-gradient(135deg, #f59e0b, #fbbf24); }
.ap-badge-gradient--amber-mid    { background: linear-gradient(135deg, #d97706, #f59e0b); }
.ap-badge-gradient--amber-dark   { background: linear-gradient(135deg, #b45309, #d97706); } .ap-section--hidden { display: none; } .ap-404 {
min-height: 60vh;
display: flex;
align-items: center;
justify-content: center;
padding-block: var(--space-24);
padding-inline: var(--space-6);
text-align: center;
}
.ap-404__inner { max-width: 36rem; margin-inline: auto; }
.ap-404__code {
font-family: var(--font-display);
font-size: clamp(5rem, 12vw, 8rem);
font-weight: 300;
line-height: 1;
color: var(--color-slate-200);
margin-bottom: var(--space-4);
user-select: none;
}
.ap-404__title {
font-family: var(--font-display);
font-size: var(--text-3xl);
font-weight: 600;
color: var(--color-text);
margin-bottom: var(--space-4);
}
.ap-404__desc {
font-size: var(--text-base);
line-height: var(--leading-loose);
color: var(--color-text-muted);
margin-bottom: var(--space-8);
}
.ap-404__actions {
display: flex;
flex-direction: column;
gap: var(--space-4);
justify-content: center;
margin-bottom: var(--space-12);
}
@media (min-width: 640px) {
.ap-404__actions { flex-direction: row; }
}
.ap-404__search { max-width: 24rem; margin-inline: auto; } .ap-archive { padding-block: var(--space-16); }
.ap-archive__search { max-width: 36rem; margin-bottom: var(--space-12); }
.ap-archive__grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-8);
margin-bottom: var(--space-12);
}
@media (min-width: 768px) {
.ap-archive__grid { grid-template-columns: repeat(2, 1fr); }
.ap-archive__grid--3col { grid-template-columns: repeat(3, 1fr); }
}
.ap-archive__empty {
text-align: center;
color: var(--color-text-muted);
padding-block: var(--space-16);
}
.ap-archive__empty-search { text-align: center; padding-block: var(--space-16); }
.ap-archive__empty-icon {
display: block;
width: 4rem;
height: 4rem;
color: var(--color-slate-300);
margin: 0 auto var(--space-6);
}
.ap-archive__empty-title {
font-size: var(--text-2xl);
font-weight: 300;
color: var(--color-slate-700);
margin-bottom: var(--space-4);
}
.ap-archive__empty-text { color: var(--color-slate-500); } .ap-page { padding-block: var(--space-16); }
.ap-page__content { max-width: 65ch; }
.ap-page__pagination {
display: flex;
gap: var(--space-2);
flex-wrap: wrap;
margin-top: var(--space-8);
}
.ap-page__page-link {
padding: var(--space-1) var(--space-3);
background-color: var(--color-slate-100);
border-radius: var(--radius-sm);
font-size: var(--text-sm);
color: var(--color-text);
} .ap-cookie {
position: fixed;
bottom: 0; left: 0; right: 0;
z-index: 80;
background-color: var(--color-obsidian);
color: #fff;
border-top: 1px solid var(--color-slate-700);
transform: translateY(100%);
transition: transform 0.5s var(--ease-in-out);
}
.ap-cookie[hidden] { display: none; }
.ap-cookie__inner {
max-width: var(--container-max);
margin-inline: auto;
padding: var(--space-5) var(--space-6);
display: flex;
flex-direction: column;
gap: var(--space-4);
align-items: flex-start;
}
@media (min-width: 640px) {
.ap-cookie__inner {
flex-direction: row;
align-items: center;
justify-content: space-between;
}
}
.ap-cookie__content {
display: flex;
align-items: flex-start;
gap: var(--space-4);
flex: 1;
}
.ap-cookie__icon {
width: 2rem;
height: 2rem;
background-color: rgba(34, 197, 94, 0.2);
border-radius: var(--radius-md);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
color: var(--color-accent);
margin-top: 2px;
}
.ap-cookie__icon svg { width: 1rem; height: 1rem; }
.ap-cookie__text {
font-size: var(--text-sm);
line-height: var(--leading-loose);
color: var(--color-slate-200);
margin: 0;
}
.ap-cookie__link {
color: var(--color-accent);
text-decoration: underline;
text-underline-offset: 2px;
transition: color 0.15s;
}
.ap-cookie__link:hover { color: var(--color-accent-dark); }
.ap-cookie__actions {
display: flex;
align-items: center;
gap: var(--space-3);
flex-shrink: 0;
}
.ap-cookie__btn {
font-size: var(--text-sm);
font-weight: 500;
padding: var(--space-2) var(--space-5);
border: none;
border-radius: var(--radius-md);
cursor: pointer;
transition: background-color 0.15s, color 0.15s;
font-family: inherit;
}
.ap-cookie__btn--reject {
background: transparent;
color: var(--color-slate-400);
padding-inline: var(--space-3);
}
.ap-cookie__btn--reject:hover { color: #fff; }
.ap-cookie__btn--accept {
background-color: var(--color-accent);
color: var(--color-obsidian);
}
.ap-cookie__btn--accept:hover { background-color: var(--color-accent-dark); color: var(--color-obsidian); } .ap-floating-cta {
position: fixed;
bottom: var(--space-6);
right: var(--space-6);
z-index: 90;
display: flex;
flex-direction: column;
align-items: flex-end;
gap: var(--space-3);
opacity: 0;
transform: translateY(1rem);
transition: opacity 0.4s var(--ease-in-out), transform 0.4s var(--ease-in-out);
pointer-events: none;
}
.ap-floating-cta.is-visible {
opacity: 1;
transform: translateY(0);
pointer-events: auto;
}
.ap-floating-cta__btn {
display: flex;
align-items: center;
gap: var(--space-3);
padding: var(--space-3) var(--space-5);
border-radius: 9999px;
font-size: var(--text-sm);
font-weight: 500;
text-decoration: none;
color: #fff;
box-shadow: var(--shadow-lg);
transition: background-color 0.2s var(--ease-in-out), transform 0.2s var(--ease-in-out);
white-space: nowrap;
}
.ap-floating-cta__btn:hover { transform: translateY(-2px); }
.ap-floating-cta__btn--wa { background-color: var(--color-accent); }
.ap-floating-cta__btn--wa:hover { background-color: var(--color-accent-dark); }
.ap-floating-cta__btn--contact { background-color: var(--color-obsidian); }
.ap-floating-cta__btn--contact:hover { background-color: var(--color-slate-800); }
.ap-floating-cta__icon { width: 1.25rem; height: 1.25rem; flex-shrink: 0; }
.ap-floating-cta__label { color: inherit; } .ap-contact-modal {
position: fixed;
inset: 0;
z-index: 100;
display: flex;
align-items: center;
justify-content: center;
padding: var(--space-4);
}
.ap-contact-modal[hidden] { display: none; }
.ap-contact-modal__backdrop {
position: absolute;
inset: 0;
background-color: rgba(15, 23, 42, 0.8);
backdrop-filter: blur(4px);
-webkit-backdrop-filter: blur(4px);
}
.ap-contact-modal__container {
position: relative;
z-index: 1;
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.ap-contact-modal__box {
position: relative;
width: 100%;
max-width: 32rem;
max-height: 90vh;
overflow-y: auto;
background-color: #fff;
border-radius: var(--radius-xl);
box-shadow: var(--shadow-xl);
}
.ap-contact-modal__header {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--space-6) var(--space-8);
background-color: var(--color-obsidian);
color: #fff;
}
.ap-contact-modal__title {
font-size: var(--text-xl);
font-weight: 600;
margin: 0;
color: #fff;
}
.ap-contact-modal__sub {
font-size: var(--text-sm);
color: var(--color-slate-400);
margin: var(--space-1) 0 0;
}
.ap-contact-modal__close {
width: 2.25rem;
height: 2.25rem;
background-color: var(--color-slate-800);
color: #fff;
border: none;
border-radius: var(--radius-md);
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: background-color 0.2s;
flex-shrink: 0;
}
.ap-contact-modal__close:hover { background-color: var(--color-slate-700); }
.ap-contact-modal__close svg { width: 1.25rem; height: 1.25rem; }
.ap-contact-modal__body { padding: var(--space-8); } .ap-contact-form { width: 100%; }
.ap-contact-form__grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-5);
}
.ap-contact-form__row--split {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-5);
}
@media (min-width: 640px) {
.ap-contact-form__row--split { grid-template-columns: 1fr 1fr; }
}
.ap-contact-form__group { display: block; }
.ap-contact-form__label {
display: block;
font-size: var(--text-sm);
font-weight: 500;
color: var(--color-slate-700);
margin-bottom: var(--space-2);
}
.ap-contact-form__required { color: var(--color-error); margin-left: var(--space-1); }
.ap-contact-form__input {
width: 100%;
padding: var(--space-3) var(--space-4);
border: 1px solid var(--color-slate-200);
border-radius: var(--radius-md);
font-size: var(--text-sm);
color: var(--color-text);
background-color: #fff;
font-family: inherit;
transition: border-color 0.2s, box-shadow 0.2s;
-webkit-appearance: none;
appearance: none;
}
.ap-contact-form__input:focus {
outline: none;
border-color: var(--color-slate-400);
box-shadow: 0 0 0 3px rgba(148, 163, 184, 0.15);
}
.ap-contact-form__select { background-position: right var(--space-4) center; }
.ap-contact-form__textarea { resize: none; }
.ap-contact-form__submit {
width: 100%;
padding: var(--space-4);
background-color: var(--color-obsidian);
color: #fff;
border: none;
border-radius: var(--radius-md);
font-size: var(--text-base);
font-weight: 500;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
gap: var(--space-2);
transition: background-color 0.3s;
font-family: inherit;
}
.ap-contact-form__submit:hover { background-color: var(--color-slate-800); }
.ap-contact-form__spinner {
width: 1.25rem;
height: 1.25rem;
animation: ap-spin 1s linear infinite;
display: none;
}
.ap-contact-form__spinner.is-visible { display: block; }
.ap-contact-form__success {
margin-top: var(--space-4);
padding: var(--space-4);
background-color: rgba(34, 197, 94, 0.08);
color: #065f46;
border: 1px solid #a7f3d0;
border-radius: var(--radius-md);
font-size: var(--text-sm);
}
.ap-contact-form__error {
margin-top: var(--space-4);
padding: var(--space-4);
background-color: #fef2f2;
color: #991b1b;
border: 1px solid #fecaca;
border-radius: var(--radius-md);
font-size: var(--text-sm);
} .ap-contact-form__kvkk {
margin-top: var(--space-4);
}
.ap-contact-form__kvkk-label {
display: flex;
align-items: flex-start;
gap: var(--space-3);
font-size: var(--text-sm);
line-height: var(--leading-snug);
color: var(--color-text-muted);
cursor: pointer;
user-select: none;
}
.ap-contact-form__checkbox {
flex-shrink: 0;
width: 18px;
height: 18px;
margin-top: 2px;
accent-color: var(--color-accent);
cursor: pointer;
}
.ap-contact-form__checkbox:focus-visible {
outline: 2px solid var(--color-accent);
outline-offset: 2px;
}
.ap-contact-form__kvkk-text {
flex: 1;
}
.ap-contact-form__kvkk-text a {
color: var(--color-accent);
text-decoration: underline;
text-underline-offset: 2px;
}
.ap-contact-form__kvkk-text a:hover {
color: var(--color-accent-dark);
}
.ap-contact-form__kvkk-error {
display: block;
margin-top: var(--space-2);
font-size: var(--text-sm);
color: #991b1b;
line-height: var(--leading-snug);
}
.ap-contact-form__kvkk.has-error .ap-contact-form__kvkk-label {
color: #991b1b;
} .ap-form-field__error {
display: block;
margin-top: var(--space-2);
font-size: var(--text-sm);
color: #991b1b;
line-height: var(--leading-snug);
} .ap-callback-form {
display: flex;
flex-direction: column;
gap: var(--space-4);
}
.ap-callback-form__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--space-4);
}
.ap-callback-form__group--full {
grid-column: 1 / -1;
}
.ap-callback-form__label {
display: block;
font-size: var(--text-sm);
font-weight: 500;
color: var(--color-text);
margin-bottom: var(--space-2);
line-height: var(--leading-snug);
}
.ap-callback-form__required {
color: var(--color-accent);
margin-left: 2px;
}
.ap-callback-form__input {
display: block;
width: 100%;
padding: var(--space-3) var(--space-4);
font-family: inherit;
font-size: var(--text-base);
line-height: var(--leading-normal);
color: var(--color-text);
background-color: var(--color-surface);
border: 1.5px solid var(--color-border);
border-radius: var(--radius-sm);
transition: border-color var(--duration-fast) var(--ease-out-expo),
box-shadow var(--duration-fast) var(--ease-out-expo);
}
.ap-callback-form__input:focus-visible {
outline: none;
border-color: var(--color-accent);
box-shadow: 0 0 0 3px color-mix(in oklch, var(--color-accent) 20%, transparent);
}
.ap-callback-form__input.error,
.ap-callback-form__input.has-error {
border-color: #c0392b;
}
.ap-callback-form__select {
appearance: none;
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><path d='M3 4.5l3 3 3-3' fill='none' stroke='%232e2b28' stroke-width='1.5' stroke-linecap='round'/></svg>");
background-repeat: no-repeat;
background-position: right var(--space-4) center;
background-size: 12px;
padding-right: var(--space-10);
}
.ap-callback-form__kvkk {
grid-column: 1 / -1;
}
.ap-callback-form__kvkk-label {
display: flex;
align-items: flex-start;
gap: var(--space-3);
font-size: var(--text-sm);
line-height: var(--leading-snug);
color: var(--color-text-muted);
cursor: pointer;
user-select: none;
}
.ap-callback-form__checkbox {
flex-shrink: 0;
width: 18px;
height: 18px;
margin-top: 2px;
accent-color: var(--color-accent);
cursor: pointer;
}
.ap-callback-form__checkbox:focus-visible {
outline: 2px solid var(--color-accent);
outline-offset: 2px;
}
.ap-callback-form__kvkk-text {
flex: 1;
}
.ap-callback-form__kvkk-text a {
color: var(--color-accent);
text-decoration: underline;
text-underline-offset: 2px;
}
.ap-callback-form__kvkk-text a:hover {
color: var(--color-accent-dark);
}
.ap-callback-form__kvkk-error {
display: block;
margin-top: var(--space-2);
font-size: var(--text-sm);
color: #991b1b;
line-height: var(--leading-snug);
}
.ap-callback-form__submit {
grid-column: 1 / -1;
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--space-2);
padding: var(--space-4) var(--space-6);
background-color: var(--color-accent);
color: var(--color-obsidian);
font-family: inherit;
font-size: var(--text-base);
font-weight: 600;
line-height: 1;
border: none;
border-radius: var(--radius-sm);
cursor: pointer;
min-height: 48px;
transition: background-color var(--duration-fast) var(--ease-out-expo),
transform var(--duration-fast) var(--ease-out-expo);
}
.ap-callback-form__submit:hover {
background-color: color-mix(in oklch, var(--color-accent) 88%, black);
transform: translateY(-1px);
}
.ap-callback-form__submit:focus-visible {
outline: 2px solid var(--color-accent);
outline-offset: 2px;
}
.ap-callback-form__submit:disabled {
opacity: 0.6;
cursor: not-allowed;
transform: none;
}
.ap-callback-form__spinner {
width: 18px;
height: 18px;
animation: ap-spin 0.8s linear infinite;
}
.ap-callback-form__success {
padding: var(--space-4);
background-color: color-mix(in oklch, var(--color-success) 10%, white);
color: var(--color-success);
border: 1px solid color-mix(in oklch, var(--color-success) 30%, white);
border-radius: var(--radius-md);
font-size: var(--text-sm);
line-height: var(--leading-snug);
}
.ap-callback-form__error {
padding: var(--space-4);
background-color: #fef2f2;
color: #991b1b;
border: 1px solid #fecaca;
border-radius: var(--radius-md);
font-size: var(--text-sm);
line-height: var(--leading-snug);
}
@media (max-width: 640px) {
.ap-callback-form__grid {
grid-template-columns: 1fr;
}
}
@keyframes ap-spin { to { transform: rotate(360deg); } } .ap-social {
display: flex;
align-items: center;
gap: var(--space-3);
}
.ap-social__btn {
display: flex;
align-items: center;
justify-content: center;
border-radius: var(--radius-md);
transition: background-color 0.2s var(--ease-in-out), color 0.2s var(--ease-in-out);
text-decoration: none;
flex-shrink: 0;
}
.ap-social__btn svg { width: 1rem; height: 1rem; } .ap-social__btn--default {
width: 2.5rem;
height: 2.5rem;
background-color: var(--color-slate-100);
color: var(--color-slate-700);
}
.ap-social__btn--default:hover {
background-color: var(--color-slate-200);
color: var(--color-slate-700);
} .ap-social__btn--inverse {
width: 2.5rem;
height: 2.5rem;
background-color: var(--color-slate-800);
color: #fff;
}
.ap-social__btn--inverse:hover {
background-color: var(--color-accent-dark);
color: #fff;
} .ap-social__btn--small {
width: 2rem;
height: 2rem;
background-color: var(--color-slate-100);
color: var(--color-slate-600);
}
.ap-social__btn--small:hover {
background-color: var(--color-slate-200);
color: var(--color-slate-600);
} .ap-archive-hero {
min-height: 55vh;
padding-block: var(--space-24);
background-image: linear-gradient(to bottom right, var(--color-slate-800), var(--color-slate-700));
position: relative;
overflow: hidden;
display: flex;
align-items: center;
}
.ap-archive-hero__bg {
position: absolute;
inset: 0;
opacity: 0.1;
pointer-events: none;
}
.ap-archive-hero__container {
position: relative;
z-index: 1;
width: 100%;
}
.ap-archive-hero__breadcrumb {
margin-bottom: var(--space-8);
}
.ap-archive-hero__breadcrumb .ap-breadcrumb__list {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: var(--space-2) var(--space-2);
font-size: var(--text-sm);
color: var(--color-slate-400);
}
.ap-archive-hero__breadcrumb .ap-breadcrumb__link {
color: var(--color-slate-400);
text-decoration: none;
transition: color 0.15s;
}
.ap-archive-hero__breadcrumb .ap-breadcrumb__link:hover { color: #fff; }
.ap-archive-hero__breadcrumb .ap-breadcrumb__current { color: var(--color-slate-200); font-weight: 500; }
.ap-archive-hero__content { max-width: 48rem; }
.ap-archive-hero__badge {
display: inline-flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-2) var(--space-5);
border: 1px solid rgba(255, 255, 255, 0.2);
border-radius: 9999px;
margin-bottom: var(--space-8);
background-color: rgba(255, 255, 255, 0.05);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
}
.ap-archive-hero__badge-icon { width: 1rem; height: 1rem; color: var(--color-accent); flex-shrink: 0; }
.ap-archive-hero__badge-text { font-size: var(--text-sm); font-weight: 500; color: var(--color-slate-200); }
.ap-archive-hero__title {
font-family: var(--font-display);
font-size: clamp(2.5rem, 6vw, 3.75rem);
font-weight: 700;
line-height: var(--leading-tight);
color: #fff;
margin: 0 0 var(--space-6);
}
.ap-archive-hero__kicker {
display: block;
font-size: var(--text-3xl);
font-weight: 300;
color: var(--color-slate-300);
margin-bottom: var(--space-2);
}
.ap-archive-hero__name {
display: inline;
color: var(--color-accent);
}
.ap-archive-hero__desc {
font-size: var(--text-xl);
line-height: var(--leading-loose);
color: var(--color-slate-300);
margin: 0 0 var(--space-10);
max-width: 56ch;
}
.ap-archive-hero__tags {
display: flex;
flex-wrap: wrap;
gap: var(--space-3);
}
.ap-archive-hero__tag {
display: inline-flex;
align-items: center;
padding: var(--space-2) var(--space-4);
border-radius: 9999px;
font-size: var(--text-sm);
font-weight: 500;
text-decoration: none;
transition: background-color 0.2s, color 0.2s, border-color 0.2s;
white-space: nowrap;
}
.ap-archive-hero__tag--all,
.ap-archive-hero__tag--other {
border: 1px solid rgba(255, 255, 255, 0.3);
color: var(--color-slate-200);
background-color: transparent;
}
.ap-archive-hero__tag--all:hover,
.ap-archive-hero__tag--other:hover {
background-color: rgba(255, 255, 255, 0.1);
color: #fff;
border-color: rgba(255, 255, 255, 0.5);
}
.ap-archive-hero__tag--current {
background-color: #fff;
color: var(--color-slate-800);
font-weight: 600;
}
.ap-archive-hero__list-section { padding-block: var(--space-20); background-color: #fff; } .ap-hizmet-fallback-hero {
background-image: linear-gradient(to bottom right, var(--color-slate-100), #fff, var(--color-slate-100));
border-bottom: 1px solid var(--color-slate-100);
}
.ap-hizmet-fallback-hero__inner { padding-block: var(--space-20); }
.ap-hizmet-fallback-hero__grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-12);
align-items: center;
margin-top: var(--space-8);
}
@media (min-width: 1024px) {
.ap-hizmet-fallback-hero__grid { grid-template-columns: 1fr 1fr; }
}
.ap-hizmet-fallback-hero__icon-box {
width: 4rem;
height: 4rem;
background-color: #fff;
border: 1px solid var(--color-slate-200);
border-radius: 1rem;
box-shadow: var(--shadow-sm);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: var(--space-8);
flex-shrink: 0;
}
.ap-hizmet-fallback-hero__icon {
width: 2rem;
height: 2rem;
color: var(--color-slate-700);
}
.ap-hizmet-fallback-hero__title {
font-family: var(--font-display);
font-size: clamp(2.25rem, 5vw, 3rem);
font-weight: 300;
line-height: var(--leading-tight);
color: var(--color-text);
margin-bottom: var(--space-6);
}
.ap-hizmet-fallback-hero__desc {
font-size: var(--text-xl);
line-height: var(--leading-loose);
color: var(--color-text-muted);
margin-bottom: var(--space-8);
}
.ap-hizmet-fallback-hero__ctas {
display: flex;
flex-wrap: wrap;
gap: var(--space-4);
}
.ap-hizmet-fallback-hero__stat-card {
background-color: #fff;
border: 1px solid var(--color-slate-200);
border-radius: 1rem;
padding: var(--space-8);
text-align: center;
box-shadow: var(--shadow-sm);
}
.ap-hizmet-fallback-hero__stat-num {
font-size: var(--text-5xl);
font-weight: 700;
line-height: var(--leading-tight);
color: var(--color-text);
margin-bottom: var(--space-2);
}
.ap-hizmet-fallback-hero__stat-label { color: var(--color-text-muted); }
.ap-hizmet-fallback-content { padding-block: var(--space-16); }
.ap-hizmet-fallback-content__grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-12);
}
@media (min-width: 1024px) {
.ap-hizmet-fallback-content__grid { grid-template-columns: 2fr 1fr; }
}
.ap-hizmet-fallback-content__main { min-width: 0; }
.ap-hizmet-fallback-content__article { color: var(--color-text); line-height: var(--leading-loose); }
.ap-hizmet-fallback-content__features {
background-color: var(--color-slate-100);
border: 1px solid var(--color-slate-100);
border-radius: 1rem;
padding: var(--space-6);
margin-bottom: var(--space-6);
}
.ap-hizmet-fallback-content__features-title {
font-weight: 600;
color: var(--color-text);
margin-bottom: var(--space-4);
font-size: var(--text-base);
}
.ap-hizmet-fallback-content__features-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: var(--space-3);
}
.ap-hizmet-fallback-content__feature-item {
display: flex;
align-items: flex-start;
gap: var(--space-3);
font-size: var(--text-sm);
color: var(--color-slate-700);
line-height: var(--leading-normal);
}
.ap-hizmet-fallback-content__feature-icon {
width: 1rem;
height: 1rem;
color: var(--color-accent-dark);
flex-shrink: 0;
margin-top: 2px;
}
.ap-hizmet-fallback-content__cta {
background-color: var(--color-obsidian);
color: #fff;
border-radius: 1rem;
padding: var(--space-6);
}
.ap-hizmet-fallback-content__cta-title {
font-weight: 600;
margin-bottom: var(--space-3);
color: #fff;
}
.ap-hizmet-fallback-content__cta-desc {
font-size: var(--text-sm);
color: var(--color-slate-400);
margin-bottom: var(--space-4);
}
.ap-hizmet-fallback-content__cta-btn {
display: block;
text-align: center;
background-color: #fff;
color: var(--color-obsidian);
font-weight: 500;
padding: var(--space-3);
border-radius: var(--radius-md);
text-decoration: none;
transition: background-color 0.2s;
}
.ap-hizmet-fallback-content__cta-btn:hover { background-color: var(--color-slate-100); }  .ap-contact-form__submit > [hidden],
.ap-ct-form__submit > [hidden],
.ap-callback-form__submit > [hidden],
button[type="submit"] > [hidden] {
display: none !important;
} .ap-form__success-card[hidden],
.ap-form__error-card[hidden] {
display: none !important;
} .ap-btn {
position: relative;
isolation: isolate;
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--space-3);
padding: var(--space-3) var(--space-5);
border: 2px solid transparent;
border-radius: 9999px;
font-size: var(--text-base);
font-weight: 600;
line-height: 1;
text-decoration: none;
white-space: nowrap;
cursor: pointer;
overflow: hidden;
box-shadow: var(--shadow-lg);
transform: translateY(0);
transition:
color 0.25s var(--ease-in-out),
background-color 0.25s var(--ease-in-out),
border-color 0.25s var(--ease-in-out),
box-shadow 0.25s var(--ease-in-out),
transform 0.25s var(--ease-in-out);
}
.ap-btn::before {
content: "";
position: absolute;
inset: 0;
z-index: -1;
background: linear-gradient(
120deg,
transparent 0%,
rgba(255, 255, 255, 0.28) 45%,
transparent 70%
);
transform: translateX(-120%);
transition: transform 0.55s var(--ease-in-out);
}
.ap-btn:hover {
transform: translateY(-2px);
box-shadow: 0 18px 45px rgba(0, 0, 0, 0.18);
}
.ap-btn:hover::before {
transform: translateX(120%);
}
.ap-btn:active {
transform: translateY(0);
box-shadow: var(--shadow-lg);
}
.ap-btn:focus-visible {
outline: 3px solid color-mix(in srgb, var(--color-accent) 35%, transparent);
outline-offset: 4px;
} .ap-btn--primary {
color: #fff;
background: linear-gradient(
135deg,
var(--color-accent),
var(--color-accent-dark)
);
border-color: var(--color-accent);
}
.ap-btn--primary:hover {
color: #fff;
background: linear-gradient(
135deg,
var(--color-accent-dark),
var(--color-accent)
);
} .ap-btn--outline {
color: var(--color-accent);
background: transparent;
border-color: var(--color-accent);
box-shadow: none;
}
.ap-btn--outline::after {
content: "";
position: absolute;
inset: 0;
z-index: -2;
background: var(--color-accent);
transform: scaleX(0);
transform-origin: left;
transition: transform 0.28s var(--ease-in-out);
}
.ap-btn--outline:hover {
color: #fff;
border-color: var(--color-accent);
box-shadow: 0 16px 38px color-mix(in srgb, var(--color-accent) 30%, transparent);
}
.ap-btn--outline:hover::after {
transform: scaleX(1);
} .ap-btn svg {
width: 1.1em;
height: 1.1em;
flex-shrink: 0;
transition: transform 0.25s var(--ease-in-out);
}
.ap-btn:hover svg {
transform: translateX(2px);
} .ap-btn:disabled,
.ap-btn[aria-disabled="true"] {
pointer-events: none;
opacity: 0.55;
box-shadow: none;
} @media (prefers-reduced-motion: reduce) {
.ap-btn,
.ap-btn::before,
.ap-btn::after,
.ap-btn svg {
transition: none;
}
.ap-btn:hover {
transform: none;
}
} .ap-contact-form__submit,
.ap-ct-form__submit,
.ap-callback-form__submit {
position: relative;
transition: opacity var(--duration-fast) var(--ease-in-out),
transform var(--duration-fast) var(--ease-in-out);
}
.ap-contact-form__submit:disabled,
.ap-ct-form__submit:disabled,
.ap-callback-form__submit:disabled {
cursor: wait;
opacity: 0.85;
transform: none;
}
.ap-contact-form__spinner,
.ap-ct-form__spinner,
.ap-callback-form__spinner {
animation: ap-spin 0.8s linear infinite;
} .ap-form--submitted .ap-contact-form__grid,
.ap-form--submitted .ap-ct-form__row,
.ap-form--submitted .ap-callback-form__grid {
opacity: 0.45;
pointer-events: none;
transition: opacity var(--duration-normal) var(--ease-in-out);
}
.ap-form__success-card {
display: flex;
align-items: flex-start;
gap: var(--space-4);
padding: var(--space-5) var(--space-6);
margin-top: var(--space-4);
background-color: color-mix(in oklch, var(--color-success) 10%, white);
color: var(--color-success);
border: 1px solid color-mix(in oklch, var(--color-success) 30%, white);
border-radius: var(--radius-md);
font-size: var(--text-base);
line-height: var(--leading-snug);
}
.ap-form__success-card[hidden] { display: none; }
.ap-form__success-card-icon {
flex-shrink: 0;
width: 28px;
height: 28px;
border-radius: 50%;
background-color: var(--color-success);
color: #fff;
display: flex;
align-items: center;
justify-content: center;
}
.ap-form__success-card-icon svg { width: 16px; height: 16px; }
.ap-form__success-card-title {
font-weight: 600;
font-size: var(--text-lg);
margin-bottom: var(--space-1);
color: #155724;
}
.ap-form__success-card-text { color: #155724; }
.ap-form__error-card {
display: flex;
align-items: flex-start;
gap: var(--space-3);
padding: var(--space-4) var(--space-5);
margin-top: var(--space-4);
background-color: #fef2f2;
color: #991b1b;
border: 1px solid #fecaca;
border-radius: var(--radius-md);
font-size: var(--text-sm);
line-height: var(--leading-snug);
}
.ap-form__error-card[hidden] { display: none; }
.ap-form__error-card-icon {
flex-shrink: 0;
width: 22px;
height: 22px;
color: #c0392b;
} .ap-form-field__error {
display: block;
margin-top: var(--space-1);
font-size: var(--text-sm);
color: #c0392b;
}
.ap-form-field__error:empty { display: none; }
@media (prefers-reduced-motion: reduce) {
.ap-contact-form__spinner,
.ap-ct-form__spinner,
.ap-callback-form__spinner {
animation: none;
}
}.ap-topbar {
position: fixed; top: 0; left: 0; right: 0; z-index: 30;
background: var(--ap-slate-900);
color: var(--color-surface);
font-size: var(--text-sm);
line-height: 1;
transition: transform var(--duration-normal) var(--ease-in-out),
opacity var(--duration-normal) var(--ease-in-out);
will-change: transform, opacity;
border-bottom: 1px solid var(--ap-slate-800);
}
.ap-topbar.ap-topbar--hidden {
transform: translateY(-100%);
opacity: 0;
pointer-events: none;
}
.ap-topbar__inner {
display: flex; align-items: center; justify-content: space-between;
height: var(--ap-topbar-h);
} .ap-topbar__left {
display: flex; align-items: center; gap: var(--space-3);
overflow: hidden;
}
.ap-topbar__live {
display: flex; align-items: center; gap: var(--space-1); flex-shrink: 0;
}
.ap-topbar__live-dot {
width: 7px; height: 7px;
background: var(--ap-slate-600);
border-radius: var(--radius-full);
flex-shrink: 0;
}
.ap-topbar__live-dot--on {
background: var(--ap-green-500);
animation: ap-pulse-dot var(--duration-slow) var(--ease-in-out) infinite;
}
.ap-topbar__live > span:last-child {
font-size: var(--text-xs);
color: var(--ap-slate-400);
white-space: nowrap;
}
.ap-topbar__live-dot--on ~ span {
color: var(--ap-green-400);
font-weight: 500;
}
.ap-topbar__divider {
width: 1px; height: 14px;
background: var(--ap-slate-800);
flex-shrink: 0;
}
.ap-topbar__tagline {
color: var(--ap-slate-600);
font-size: var(--text-xs);
white-space: nowrap;
display: none;
}
@media (min-width: 768px) {
.ap-topbar__tagline { display: block; }
} .ap-topbar__right {
display: flex; align-items: center; gap: var(--space-1); flex-shrink: 0;
}
.ap-topbar__cta {
display: inline-flex; align-items: center; gap: var(--space-1);
font-size: var(--text-sm);
color: var(--ap-slate-400);
text-decoration: none;
padding: var(--space-1) var(--space-3);
border-radius: var(--radius-full);
transition: background var(--duration-fast) var(--ease-in-out),
color var(--duration-fast) var(--ease-in-out);
white-space: nowrap;
}
.ap-topbar__cta:hover {
background: var(--ap-slate-800);
color: var(--ap-slate-200);
}
.ap-topbar__cta svg {
flex-shrink: 0;
color: var(--ap-slate-500);
}
.ap-topbar__cta:not(.ap-topbar__cta--secondary) {
color: var(--ap-slate-300);
font-weight: 500;
}
.ap-topbar__cta:not(.ap-topbar__cta--secondary) svg {
color: var(--ap-green-500);
}
.ap-topbar__email { display: none; }
@media (min-width: 640px) {
.ap-topbar__email { display: inline; }
} .ap-header {
position: fixed; top: var(--ap-topbar-h); left: 0; right: 0; z-index: 50;
background: var(--color-surface);
border-bottom: 1px solid var(--ap-slate-200);
transition: top var(--duration-normal) var(--ease-in-out),
box-shadow var(--duration-normal) var(--ease-in-out),
background var(--duration-normal) var(--ease-in-out); margin-bottom: 0;
}
.ap-header.scrolled {
top: 0;
box-shadow: var(--shadow-sm);
} .admin-bar .ap-header { top: calc(var(--ap-topbar-h) + 32px); }
.admin-bar .ap-header.scrolled { top: 32px; }
@media screen and (max-width: 782px) {
.admin-bar .ap-header { top: calc(var(--ap-topbar-h) + 46px); }
.admin-bar .ap-header.scrolled { top: 46px; }
} .ap-nav { position: relative; }
.ap-nav__inner {
display: flex; align-items: center;
height: var(--ap-header-h);
gap: var(--space-4);
} .ap-nav__logo {
text-decoration: none;
display: flex; align-items: center; gap: var(--space-3); flex-shrink: 0;
}
.ap-nav__logo:hover { opacity: 0.9; }
.ap-nav__logo-link {
text-decoration: none;
display: flex; align-items: center; gap: var(--space-3);
}
.ap-nav__logo-link:hover { opacity: 0.9; }
.ap-nav__logo-text {
display: flex; flex-direction: column; line-height: 1.15;
}
.ap-nav__logo-primary,
.ap-nav__logo-name {
font-size: var(--text-lg);
font-weight: 900;
color: var(--ap-slate-900);
letter-spacing: var(--tracking-tight);
}
.ap-nav__logo-sub {
display: flex; align-items: center; gap: var(--space-1);
font-size: 0.6rem;
font-weight: 500;
text-transform: uppercase;
letter-spacing: var(--tracking-wide);
color: var(--ap-slate-400);
}
.ap-nav__logo-sep { color: var(--ap-slate-300); }
.ap-nav__actions button {
background: var(--color-accent);
color: #fff;
border: 0;
display: inline-flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-2) var(--space-8);
border-radius: var(--radius-sm);
font-size: var(--text-sm);
font-weight: 600;
text-decoration: none;
min-height: 48px;
cursor: pointer;
transition:
background var(--duration-fast) var(--ease-in-out),
transform var(--duration-fast) var(--ease-in-out),
box-shadow var(--duration-fast) var(--ease-in-out);
}
.ap-nav__actions button:hover {
background: var(--color-accent-dark);
transform: translateY(-1px) scale(1.03);
box-shadow: var(--shadow-sm);
}
.ap-nav__actions button:focus-visible {
outline: 2px solid var(--color-accent);
outline-offset: 3px;
} .ap-city-rotate {
display: inline-block;
transition: opacity var(--duration-normal) var(--ease-in-out),
transform var(--duration-normal) var(--ease-in-out);
}
.ap-city-rotate.ap-city-fade-out {
opacity: 0; transform: translateY(-6px);
}
.ap-city-rotate.ap-city-fade-in {
opacity: 1; transform: translateY(0);
} .ap-nav__menu {
display: none; list-style: none; margin: 0; padding: 0;
align-items: center; gap: var(--space-1);
margin-left: auto;
}
@media (min-width: 1024px) {
.ap-nav__menu { display: flex; }
}
.ap-nav__item { position: relative; }
.ap-nav__link {
display: inline-flex; align-items: center; gap: var(--space-1);
padding: var(--space-2) var(--space-3);
font-size: var(--text-sm);
font-weight: 500;
color: var(--ap-slate-700);
text-decoration: none;
border-radius: var(--radius-md);
transition: color var(--duration-fast) var(--ease-in-out),
background var(--duration-fast) var(--ease-in-out);
background: none; border: none; cursor: pointer;
font-family: inherit; line-height: 1.5; white-space: nowrap;
}
.ap-nav__link:hover {
color: var(--ap-slate-900);
background: var(--ap-slate-50);
}
.ap-nav__link--active {
color: var(--ap-slate-900);
font-weight: 600;
}
.ap-nav__chevron {
transition: transform var(--duration-normal) var(--ease-in-out);
flex-shrink: 0;
}
.ap-nav__item--dropdown:hover .ap-nav__chevron { transform: rotate(180deg); }
.ap-nav__actions {
display: none; align-items: center; gap: var(--space-2); flex-shrink: 0;
}
@media (min-width: 1024px) {
.ap-nav__actions { display: flex; }
} .ap-nav__hamburger {
display: flex; flex-direction: column; justify-content: center;
gap: 5px;
width: 40px; height: 40px;
background: none; border: none; cursor: pointer;
padding: var(--space-2);
border-radius: var(--radius-md);
transition: background var(--duration-fast) var(--ease-in-out);
flex-shrink: 0;
margin-left: auto;
}
.ap-nav__hamburger:hover { background: var(--ap-slate-100); }
@media (min-width: 1024px) {
.ap-nav__hamburger { display: none; }
}
.ap-hamburger__bar {
display: block; height: 2px;
background: var(--ap-slate-700);
border-radius: 2px;
transition: transform var(--duration-normal) var(--ease-in-out),
opacity var(--duration-normal) var(--ease-in-out),
width var(--duration-fast) var(--ease-in-out);
}
.ap-hamburger__bar:nth-child(1) { width: 22px; }
.ap-hamburger__bar:nth-child(2) { width: 16px; }
.ap-hamburger__bar:nth-child(3) { width: 20px; }
.ap-nav__hamburger[aria-expanded="true"] .ap-hamburger__bar:nth-child(1) {
width: 22px; transform: translateY(7px) rotate(45deg);
}
.ap-nav__hamburger[aria-expanded="true"] .ap-hamburger__bar:nth-child(2) {
opacity: 0;
}
.ap-nav__hamburger[aria-expanded="true"] .ap-hamburger__bar:nth-child(3) {
width: 22px; transform: translateY(-7px) rotate(-45deg);
} .ap-header .ap-nav__item--mega { position: static; }
.ap-nav__item--mega.is-open .ap-nav__chevron { transform: rotate(180deg); }
.ap-mega {
position: absolute; left: 0; right: 0; top: 100%;
background: var(--color-surface);
border-top: 1px solid var(--ap-slate-100);
box-shadow: var(--shadow-lg);
z-index: 200;
animation: ap-mega-in var(--duration-fast) var(--ease-in-out);
} .ap-mega[hidden] { display: none !important; }
@keyframes ap-mega-in {
from { opacity: 0; transform: translateY(-6px); }
to   { opacity: 1; transform: translateY(0); }
}
.ap-mega__inner {
display: flex; gap: 0; padding: var(--space-8) 0;
} .ap-mega__promo {
width: 260px; flex-shrink: 0;
padding-right: var(--space-8);
border-right: 1px solid var(--ap-slate-100);
}
.ap-mega__promo-icon {
width: 44px; height: 44px;
background: var(--ap-green-50);
border-radius: var(--radius-lg);
display: flex; align-items: center; justify-content: center;
color: var(--ap-green-600);
margin-bottom: var(--space-4);
}
.ap-mega__promo-title {
font-size: var(--text-base);
font-weight: 700;
color: var(--ap-slate-900);
margin: 0 0 var(--space-2);
line-height: var(--leading-snug);
}
.ap-mega__promo-desc {
font-size: var(--text-sm);
color: var(--ap-slate-500);
line-height: var(--leading-normal);
margin: 0 0 var(--space-5);
}
.ap-mega__promo-list {
list-style: none; margin: 0 0 var(--space-5); padding: 0;
display: flex; flex-direction: column; gap: var(--space-2);
}
.ap-mega__promo-list li {
font-size: var(--text-sm);
color: var(--color-text-muted);
padding-left: var(--space-4);
position: relative;
}
.ap-mega__promo-list li::before {
content: ''; position: absolute; left: 0; top: 0.45em;
width: 6px; height: 6px; border-radius: var(--radius-full);
background: var(--color-success);
}
.ap-mega__promo-cta {
display: inline-flex;
align-items: center;
gap: var(--space-2);
font-size: var(--text-sm);
font-weight: 600;
color: var(--color-accent);
text-decoration: none;
transition: gap var(--duration-fast) var(--ease-in-out);
}
.ap-mega__promo-cta:hover { gap: var(--space-3); } .ap-mega__services {
flex: 1; padding-left: var(--space-6);
display: grid; grid-template-columns: repeat(2, 1fr);
gap: var(--space-1); align-content: start;
}
.ap-mega__service-item {
display: flex; align-items: center; gap: var(--space-3);
padding: var(--space-3) var(--space-3);
border-radius: var(--radius-lg);
text-decoration: none;
transition: background var(--duration-fast) var(--ease-in-out);
}
.ap-mega__service-item:hover { background: var(--ap-slate-50); }
.ap-mega__service-item:hover .ap-mega__service-icon {
background: var(--ap-green-50);
color: var(--ap-green-600);
}
.ap-mega__service-item:hover .ap-mega__service-arrow {
opacity: 1; transform: translateX(3px);
}
.ap-mega__service-icon {
width: 38px; height: 38px;
background: var(--ap-slate-100);
border-radius: var(--radius-md);
display: flex; align-items: center; justify-content: center;
flex-shrink: 0;
color: var(--ap-slate-500);
transition: background var(--duration-fast) var(--ease-in-out),
color var(--duration-fast) var(--ease-in-out);
}
.ap-mega__service-content { flex: 1; min-width: 0; }
.ap-mega__service-title {
display: block; font-size: var(--text-sm); font-weight: 600;
color: var(--ap-slate-900);
}
.ap-mega__service-desc {
display: block; font-size: var(--text-xs);
color: var(--ap-slate-500);
margin-top: 2px;
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ap-mega__service-arrow {
color: var(--ap-slate-300);
flex-shrink: 0;
opacity: 0;
transition: opacity var(--duration-fast) var(--ease-in-out),
transform var(--duration-fast) var(--ease-in-out);
} @media (max-width: 1023px) {
.ap-header .ap-mega { display: none; }
} .ap-mobile-menu {
position: fixed; inset: 0; z-index: 300;
background: rgba(15, 23, 42, 0.6);
backdrop-filter: blur(4px);
-webkit-backdrop-filter: blur(4px);
} .ap-mobile-menu[hidden] { display: none !important; }
.ap-mobile-menu.ap-open { display: block; }
.ap-mobile-menu__inner {
position: absolute; top: 0; right: 0; bottom: 0;
width: min(380px, 92vw);
background: var(--color-surface);
overflow-y: auto;
-webkit-overflow-scrolling: touch;
display: flex; flex-direction: column;
transform: translateX(100%);
transition: transform var(--duration-slow) var(--ease-in-out);
}
.ap-mobile-menu.ap-open .ap-mobile-menu__inner { transform: translateX(0); }
.ap-mobile-menu__header {
display: flex; align-items: center; justify-content: space-between;
padding: var(--space-5) var(--space-6);
border-bottom: 1px solid var(--ap-slate-100);
flex-shrink: 0;
}
.ap-mobile-menu__title {
font-size: var(--text-base); font-weight: 600;
color: var(--ap-slate-900);
}
.ap-mobile-menu__close {
display: flex; align-items: center; justify-content: center;
width: 36px; height: 36px;
background: var(--ap-slate-50);
border: none; border-radius: var(--radius-md);
cursor: pointer;
color: var(--ap-slate-600);
transition: background var(--duration-fast) var(--ease-in-out),
color var(--duration-fast) var(--ease-in-out);
}
.ap-mobile-menu__close:hover {
background: var(--ap-slate-100);
color: var(--ap-slate-900);
}
.ap-mobile-menu__list {
list-style: none; margin: 0; padding: var(--space-4) var(--space-4) 0; flex: 1;
}
.ap-mobile-menu__link {
display: block;
padding: var(--space-3) var(--space-4);
font-size: var(--text-base); font-weight: 500;
color: var(--ap-slate-700);
text-decoration: none;
border-radius: var(--radius-lg);
transition: background var(--duration-fast) var(--ease-in-out),
color var(--duration-fast) var(--ease-in-out);
}
.ap-mobile-menu__link:hover {
background: var(--ap-slate-50);
color: var(--ap-slate-900);
}
.ap-mobile-menu__accordion {
display: flex; align-items: center; justify-content: space-between;
width: 100%;
padding: var(--space-3) var(--space-4);
font-size: var(--text-base); font-weight: 500;
color: var(--ap-slate-700);
border-radius: var(--radius-lg);
background: none; border: none;
cursor: pointer; font-family: inherit;
transition: background var(--duration-fast) var(--ease-in-out),
color var(--duration-fast) var(--ease-in-out);
}
.ap-mobile-menu__accordion:hover {
background: var(--ap-slate-50); color: var(--ap-slate-900);
}
.ap-mobile-menu__accordion[aria-expanded="true"] {
color: var(--ap-slate-900); background: var(--ap-slate-50);
}
.ap-mobile-menu__accordion[aria-expanded="true"] .ap-mobile-menu__chevron {
transform: rotate(180deg);
}
.ap-mobile-menu__chevron {
transition: transform var(--duration-normal) var(--ease-in-out);
flex-shrink: 0;
}
.ap-mobile-menu__sub {
list-style: none;
margin: var(--space-1) 0 var(--space-1) var(--space-4);
padding: 0 0 0 var(--space-3);
border-left: 2px solid var(--ap-slate-100);
}
.ap-mobile-menu__sub[hidden] { display: none; }
.ap-mobile-menu__sub-link {
display: block;
padding: var(--space-2) var(--space-3);
font-size: var(--text-sm);
color: var(--ap-slate-600);
text-decoration: none;
border-radius: var(--radius-md);
transition: background var(--duration-fast) var(--ease-in-out),
color var(--duration-fast) var(--ease-in-out);
}
.ap-mobile-menu__sub-link:hover {
background: var(--ap-slate-50); color: var(--ap-slate-900);
}
.ap-mobile-menu__sub-link--all {
color: var(--ap-green-600);
font-weight: 600;
font-size: var(--text-sm);
}
.ap-mobile-menu__footer {
padding: var(--space-5) var(--space-6);
border-top: 1px solid var(--ap-slate-100);
display: flex; flex-direction: column; gap: var(--space-3);
flex-shrink: 0;
}
.ap-mobile-menu__phone {
display: flex; align-items: center; justify-content: center; gap: var(--space-2);
font-size: var(--text-base); font-weight: 600;
color: var(--ap-slate-900);
text-decoration: none;
padding: var(--space-3);
background: var(--ap-slate-50);
border-radius: var(--radius-lg);
border: 1px solid var(--ap-slate-200);
transition: background var(--duration-fast) var(--ease-in-out);
}
.ap-mobile-menu__phone:hover { background: var(--ap-slate-100); }
.ap-mobile-menu__contact-link { margin-top: var(--space-2); } @keyframes ap-pulse-dot {
0%, 100% { opacity: 1; transform: scale(1); }
50%      { opacity: 0.5; transform: scale(0.85); }
}.ap-footer {
background: var(--color-obsidian);
color: var(--color-slate-400);
font-size: var(--text-sm);
} .ap-footer__cta-band {
background-image: linear-gradient(135deg, var(--color-obsidian) 0%, var(--color-obsidian) 60%, var(--color-accent-dark) 100%);
background: var(--color-obsidian);
color: var(--color-ivory);
padding-block: clamp(var(--space-20), 12vw, var(--space-40));
}
.ap-footer__cta-inner {
display: flex;
flex-direction: column;
gap: var(--space-8);
align-items: flex-start;
}
@media (min-width: 768px) {
.ap-footer__cta-inner {
flex-direction: row;
align-items: center;
justify-content: space-between;
}
}
.ap-footer__cta-text {
max-width: 36rem;
}
.ap-footer__cta-badge {
display: inline-flex;
align-items: center;
gap: var(--space-2);
background: rgba(200, 169, 110, 0.12);
border: 1px solid rgba(200, 169, 110, 0.2);
border-radius: var(--radius-xl);
padding: var(--space-1) var(--space-4);
font-size: var(--text-xs);
color: var(--color-accent);
font-weight: 500;
letter-spacing: var(--tracking-wide);
text-transform: uppercase;
margin-bottom: var(--space-4);
}
.ap-footer__cta-badge svg {
width: 14px;
height: 14px;
flex-shrink: 0;
}
.ap-footer__cta-title {
font-family: var(--font-display);
font-size: clamp(var(--text-2xl), 3vw, var(--text-3xl));
font-weight: 300;
color: var(--color-ivory);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
margin: 0 0 var(--space-3);
}
.ap-footer__cta-title-accent {
display: block;
color: var(--color-accent);
font-weight: 500;
}
.ap-footer__cta-desc {
color: var(--color-slate-400);
font-size: var(--text-base);
margin: 0;
}
.ap-footer__cta-actions {
display: flex;
flex-direction: column;
gap: var(--space-3);
flex-shrink: 0;
}
@media (min-width: 480px) {
.ap-footer__cta-actions {
flex-direction: row;
}
}
.ap-footer__cta-btn {
display: inline-flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-3) var(--space-6);
border-radius: var(--radius-sm);
font-size: var(--text-sm);
font-weight: 600;
text-decoration: none;
white-space: nowrap;
min-height: 44px;
transition: background var(--duration-fast) var(--ease-in-out),
transform var(--duration-fast) var(--ease-in-out),
box-shadow var(--duration-fast) var(--ease-in-out);
}
.ap-footer__cta-btn svg {
width: 18px;
height: 18px;
flex-shrink: 0;
}
.ap-footer__cta-btn--primary {
background: var(--color-accent);
color: var(--color-obsidian);
}
.ap-footer__cta-btn--primary:hover {
background: var(--color-accent-dark);
transform: translateY(-1px);
box-shadow: var(--shadow-gold);
}
.ap-footer__cta-btn--whatsapp {
background: rgba(255, 255, 255, 0.08);
color: var(--color-ivory);
border: 1px solid rgba(255, 255, 255, 0.12);
}
.ap-footer__cta-btn--whatsapp:hover {
background: rgba(255, 255, 255, 0.14);
transform: translateY(-1px);
} .ap-footer__body {
padding-top: var(--space-16);
padding-bottom: var(--space-4);
border-top: 1px solid #dedede36;
} .ap-footer__grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-12);
padding-bottom: var(--space-12);
border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
@media (min-width: 640px) {
.ap-footer__grid {
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 1024px) {
.ap-footer__grid {
grid-template-columns: 5fr 3fr 2fr 2fr;
gap: var(--space-8);
}
} .ap-footer__brand {
display: flex;
flex-direction: column;
gap: var(--space-5);
}
.ap-footer__logo {
display: inline-block;
text-decoration: none;
}
.ap-footer__logo-text {
font-family: var(--font-display);
font-size: var(--text-xl);
font-weight: 600;
color: var(--color-ivory);
letter-spacing: var(--tracking-tight);
}
.ap-footer__logo img {
max-height: 40px;
width: auto;
}
.ap-footer__brand-desc {
color: var(--color-slate-400);
font-size: var(--text-sm);
line-height: var(--leading-normal);
max-width: 24rem;
margin: 0;
} .ap-footer__contact {
display: flex;
flex-direction: column;
gap: var(--space-3);
}
.ap-footer__contact-item {
display: flex;
align-items: flex-start;
gap: var(--space-3);
color: var(--color-slate-400);
text-decoration: none;
font-size: var(--text-sm);
line-height: var(--leading-normal);
transition: color var(--duration-fast);
}
.ap-footer__contact-item:is(a):hover {
color: var(--color-ivory);
}
.ap-footer__contact-icon {
width: 16px;
height: 16px;
flex-shrink: 0;
margin-top: 0.15em;
}
.ap-footer__contact-icon svg {
width: 100%;
height: 100%;
} .ap-footer__social {
display: flex;
flex-wrap: wrap;
gap: var(--space-2);
list-style: none;
margin: 0;
padding: 0;
}
.ap-footer__social-btn {
display: flex;
align-items: center;
justify-content: center;
width: 36px;
height: 36px;
border-radius: var(--radius-sm);
background: rgba(255, 255, 255, 0.06);
border: 1px solid rgba(255, 255, 255, 0.08);
color: var(--color-slate-400);
text-decoration: none;
transition: background var(--duration-fast), color var(--duration-fast);
}
.ap-footer__social-btn:hover {
background: rgba(255, 255, 255, 0.12);
color: var(--color-ivory);
}
.ap-footer__social-btn svg {
width: 16px;
height: 16px;
} .ap-footer__trust {
display: flex;
flex-wrap: wrap;
gap: var(--space-4);
list-style: none;
margin: 0;
padding: 0;
}
.ap-footer__trust-item {
display: inline-flex;
align-items: center;
gap: var(--space-2);
font-size: var(--text-xs);
color: var(--color-slate-600);
}
.ap-footer__trust-item svg {
width: 14px;
height: 14px;
color: var(--color-accent);
flex-shrink: 0;
} .ap-footer__col {
display: flex;
flex-direction: column;
}
.ap-footer__heading {
font-family: var(--font-body);
font-size: var(--text-xs);
font-weight: 700;
color: var(--color-ivory);
text-transform: uppercase;
letter-spacing: var(--tracking-wider);
margin: 0 0 var(--space-5);
}
.ap-footer__nav-list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: var(--space-2);
}
.ap-footer__nav-list--mb {
margin-bottom: var(--space-8);
}
.ap-footer__nav-link {
display: inline-flex;
align-items: center;
gap: var(--space-2);
color: var(--color-slate-400);
text-decoration: none;
font-size: var(--text-sm);
transition: color var(--duration-fast), gap var(--duration-fast);
}
.ap-footer__nav-link:hover {
color: var(--color-ivory);
gap: var(--space-3);
}
.ap-footer__nav-arrow {
width: 12px;
height: 12px;
flex-shrink: 0;
color: var(--color-slate-600);
transition: color var(--duration-fast);
}
.ap-footer__nav-link:hover .ap-footer__nav-arrow {
color: var(--color-accent);
} .ap-footer__hours {
list-style: none;
margin: 0 0 var(--space-5);
padding: 0;
display: flex;
flex-direction: column;
gap: var(--space-3);
}
.ap-footer__hours li {
display: flex;
justify-content: space-between;
align-items: center;
font-size: var(--text-sm);
color: var(--color-slate-400);
}
.ap-footer__hours-time {
color: var(--color-ivory);
font-weight: 500;
}
.ap-footer__hours-time--closed {
color: var(--color-slate-600);
font-weight: 400;
}
.ap-footer__hours-note {
font-size: var(--text-xs);
color: var(--color-slate-600);
margin: 0 0 var(--space-5);
line-height: var(--leading-normal);
}
.ap-footer__mini-contact {
display: flex;
flex-direction: column;
gap: var(--space-2);
}
.ap-footer__mini-contact-link {
display: inline-flex;
align-items: center;
gap: var(--space-3);
color: var(--color-slate-400);
text-decoration: none;
font-size: var(--text-xs);
transition: color var(--duration-fast);
}
.ap-footer__mini-contact-link:hover {
color: var(--color-ivory);
}
.ap-footer__mini-contact-icon {
display: flex;
align-items: center;
justify-content: center;
width: 26px;
height: 26px;
border-radius: var(--radius-sm);
background: rgba(200, 169, 110, 0.12);
color: var(--color-accent);
flex-shrink: 0;
}
.ap-footer__mini-contact-icon svg {
width: 12px;
height: 12px;
} .ap-footer__bottom {
padding-block: var(--space-6);
}
.ap-footer__bottom-inner {
display: flex;
flex-direction: column;
align-items: center;
gap: var(--space-4);
text-align: center;
}
@media (min-width: 768px) {
.ap-footer__bottom-inner {
flex-direction: row;
justify-content: space-between;
text-align: left;
}
}
.ap-footer__copyright {
font-size: var(--text-xs);
color: var(--color-slate-600);
margin: 0;
}
.ap-footer__legal-links {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: var(--space-4);
list-style: none;
margin: 0;
padding: 0;
}
.ap-footer__legal-links a {
font-size: var(--text-xs);
color: var(--color-slate-600);
text-decoration: none;
transition: color var(--duration-fast);
}
.ap-footer__legal-links a:hover {
color: var(--color-slate-400);
}
.ap-footer__powered {
font-size: var(--text-xs);
color: var(--color-slate-600);
margin: 0;
}
.ap-footer__powered a {
color: var(--color-slate-600);
text-decoration: none;
transition: color var(--duration-fast);
}
.ap-footer__powered a:hover {
color: var(--color-slate-400);
}
.floating-wa-button{
padding:10px 20px;
}
.floating-contact-button{
padding:10px 30px;
background:var(--color-accent-dark);
} @media (prefers-reduced-motion: reduce) {
.ap-footer__cta-btn {
transition: none;
}
}.ap-final-cta {
background-color: var(--color-obsidian);
color: var(--color-ivory);
position: relative;
overflow: hidden;
isolation: isolate;
} .ap-final-cta::before {
content: '';
position: absolute;
inset-block-start: -20%;
inset-inline-start: -10%;
width: 50%;
height: 70%;
background: radial-gradient(
ellipse 60% 50% at 30% 30%,
rgba(200, 169, 110, 0.12) 0%,
transparent 65%
);
pointer-events: none;
z-index: -1;
} .ap-final-cta::after {
content: '';
position: absolute;
inset-block-end: -30%;
inset-inline-end: -10%;
width: 50%;
height: 80%;
background: radial-gradient(
ellipse 50% 50% at 70% 70%,
rgba(200, 169, 110, 0.08) 0%,
transparent 65%
);
pointer-events: none;
z-index: -1;
}
@supports (color: oklch(0% 0 0)) {
.ap-final-cta::before {
background: radial-gradient(
ellipse 60% 50% at 30% 30%,
oklch(72% 0.08 68 / 0.12) 0%,
transparent 65%
);
}
.ap-final-cta::after {
background: radial-gradient(
ellipse 50% 50% at 70% 70%,
oklch(72% 0.08 68 / 0.08) 0%,
transparent 65%
);
}
} .ap-final-cta__box { margin-inline: auto;
text-align: center;
padding: var(--space-12) var(--space-8);
background: rgba(245, 242, 237, 0.03);
border: 1px solid rgba(245, 242, 237, 0.08);
border-radius: var(--radius-xl);
position: relative;
z-index: 1;
backdrop-filter: blur(2px);
-webkit-backdrop-filter: blur(2px);
transition:
border-color var(--duration-normal) var(--ease-in-out),
background var(--duration-normal) var(--ease-in-out);
}
.ap-final-cta__box:hover {
border-color: rgba(200, 169, 110, 0.25);
background: rgba(245, 242, 237, 0.05);
}
@supports (background: color-mix(in oklch, white 50%, black)) {
.ap-final-cta__box {
background: color-mix(in oklch, var(--color-ivory) 3%, transparent);
}
.ap-final-cta__box:hover {
background: color-mix(in oklch, var(--color-ivory) 5%, transparent);
}
} @supports (background: linear-gradient(90deg, red, blue)) {
.ap-final-cta__box::before {
content: '';
position: absolute;
inset-block-start: 0;
inset-inline-start: 50%;
transform: translateX(-50%);
width: 30%;
height: 2px;
background: linear-gradient(
to right,
transparent 0%,
var(--color-accent) 50%,
transparent 100%
);
border-start-start-radius: var(--radius-xl);
border-start-end-radius: var(--radius-xl);
}
} .ap-final-cta__eyebrow {
display: inline-block;
font-family: var(--font-body);
font-size: var(--text-xs);
font-weight: 700;
letter-spacing: var(--tracking-wider);
text-transform: uppercase;
color: var(--color-accent);
margin: 0 0 var(--space-5);
} .ap-final-cta__title {
font-family: var(--font-display);
font-size: clamp(var(--text-2xl), 3.5vw, var(--text-4xl));
font-weight: 600;
line-height: var(--leading-tight);
color: var(--color-ivory);
letter-spacing: var(--tracking-tight);
margin: 0 0 var(--space-5);
text-wrap: balance;
} .ap-final-cta__text {
font-family: var(--font-body);
font-size: var(--text-base);
line-height: var(--leading-loose);
color: var(--color-slate-400);
margin: 0 0 var(--space-8);
margin-inline: auto;
} .ap-final-cta__actions {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: var(--space-4);
align-items: center;
} .ap-final-cta .ap-btn--primary {
background: var(--color-accent);
color: var(--color-obsidian);
border-color: var(--color-accent);
box-shadow: var(--shadow-gold);
}
.ap-final-cta .ap-btn--primary:hover {
background: var(--color-accent-dark);
border-color: var(--color-accent-dark);
box-shadow: var(--shadow-gold), var(--shadow-md);
transform: translateY(-1px);
}
@supports (background: color-mix(in oklch, white 50%, black)) {
.ap-final-cta .ap-btn--primary:hover {
background: color-mix(in oklch, var(--color-accent) 82%, black);
border-color: color-mix(in oklch, var(--color-accent) 82%, black);
}
} .ap-final-cta .ap-btn--outline {
background: transparent;
color: var(--color-ivory);
border-color: rgba(245, 242, 237, 0.4);
}
.ap-final-cta .ap-btn--outline:hover {
background: rgba(245, 242, 237, 0.08);
border-color: var(--color-ivory);
color: var(--color-ivory);
}
@supports (background: color-mix(in oklch, white 50%, black)) {
.ap-final-cta .ap-btn--outline:hover {
background: color-mix(in oklch, var(--color-ivory) 8%, transparent);
}
} @media (max-width: 639px) {
.ap-final-cta__box {
padding: var(--space-8) var(--space-5);
}
.ap-final-cta__actions {
flex-direction: column;
width: 100%;
}
.ap-final-cta__actions .ap-btn {
width: 100%;
justify-content: center;
}
} .ap-final-cta__box {
opacity: 1;
}
@supports (animation-timeline: view()) {
.ap-final-cta__box {
animation: ap-final-cta-rise linear both;
animation-timeline: view();
animation-range: entry 0% entry 30%;
}
@keyframes ap-final-cta-rise {
from {
opacity: 0;
translate: 0 32px;
}
to {
opacity: 1;
translate: 0 0;
}
}
} @media (prefers-reduced-motion: reduce) {
.ap-final-cta__box {
transition: none;
animation: none;
}
.ap-final-cta .ap-btn--primary,
.ap-final-cta .ap-btn--outline {
transition: none;
}
.ap-final-cta .ap-btn--primary:hover {
transform: none;
}
}.ap-bl-hero {
padding-block: var(--section-py);
background-color: var(--color-obsidian);
position: relative;
overflow: hidden;
background-image: var(--background-gradient);
}
.ap-bl-hero__orb {
position: absolute;
border-radius: var(--radius-full);
pointer-events: none;
opacity: 0.12;
}
.ap-bl-hero__orb--a {
width: clamp(320px, 50vw, 600px);
height: clamp(320px, 50vw, 600px);
top: -20%;
right: -10%;
background: radial-gradient(circle, var(--color-accent), transparent 70%);
}
.ap-bl-hero__orb--b {
width: clamp(200px, 35vw, 400px);
height: clamp(200px, 35vw, 400px);
bottom: -15%;
left: 5%;
background: radial-gradient(circle, var(--color-accent-dark), transparent 70%);
}
.ap-bl-hero__inner {
position: relative;
z-index: 1;
}
.ap-bl-hero__badge {
display: inline-flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-2) var(--space-5);
border: 1px solid rgba(200, 169, 110, 0.3);
border-radius: var(--radius-full);
font-size: var(--text-sm);
font-weight: 500;
color: var(--color-accent);
margin-bottom: var(--space-6);
letter-spacing: var(--tracking-wide);
text-transform: uppercase;
}
.ap-bl-hero__badge-dot {
width: 6px;
height: 6px;
border-radius: var(--radius-full);
background-color: var(--color-accent);
flex-shrink: 0;
}
.ap-bl-hero__heading {
font-family: var(--font-display);
font-size: var(--text-6xl);
font-weight: 600;
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
color: var(--color-ivory);
margin: 0 0 var(--space-6);
}
.ap-bl-hero__heading em {
font-style: normal;
color: var(--color-accent);
}
.ap-bl-hero__lead {
font-size: var(--text-lg);
line-height: var(--leading-normal);
color: rgba(245, 242, 237, 0.7);
max-width: 60ch;
margin: 0 0 var(--space-10);
}
.ap-bl-hero__actions {
display: flex;
flex-wrap: wrap;
gap: var(--space-4);
align-items: center;
}
.ap-bl-hero__cta--primary {
display: inline-flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-4) var(--space-8);
background-color: var(--color-accent);
color: var(--color-obsidian);
font-weight: 600;
font-size: var(--text-sm);
letter-spacing: var(--tracking-wide);
text-transform: uppercase;
border-radius: var(--radius-sm);
text-decoration: none;
transition: background-color var(--duration-normal) var(--ease-out-expo),
transform var(--duration-normal) var(--ease-out-expo);
}
.ap-bl-hero__cta--primary:hover {
background-color: var(--color-accent-dark);
transform: translateY(-2px);
}
@supports (background-color: color-mix(in oklch, white 50%, black)) {
.ap-bl-hero__cta--primary:hover {
background-color: color-mix(in oklch, var(--color-accent) 85%, black);
}
}
.ap-bl-hero__cta--secondary {
display: inline-flex;
align-items: center;
gap: var(--space-2);
padding: var(--space-4) var(--space-8);
border: 1.5px solid rgba(245, 242, 237, 0.3);
color: var(--color-ivory);
font-size: var(--text-sm);
letter-spacing: var(--tracking-wide);
text-decoration: none;
border-radius: var(--radius-sm);
transition: border-color var(--duration-normal) var(--ease-out-expo),
background-color var(--duration-normal) var(--ease-out-expo);
}
.ap-bl-hero__cta--secondary:hover {
border-color: var(--color-accent);
background-color: rgba(200, 169, 110, 0.1);
} .ap-bl-answer {
padding-block: var(--space-16);
background-color: var(--color-ivory);
border-bottom: 1px solid var(--color-border);
}
.ap-bl-answer__inner {
max-width: 800px;
margin: 0 auto;
}
.ap-bl-answer__label {
font-size: var(--text-sm);
font-weight: 600;
letter-spacing: var(--tracking-wider);
text-transform: uppercase;
color: var(--color-accent);
margin-bottom: var(--space-4);
}
.ap-bl-answer__question {
font-family: var(--font-display);
font-size: var(--text-2xl);
font-weight: 600;
color: var(--color-text);
margin: 0 0 var(--space-4);
line-height: var(--leading-snug);
}
.ap-bl-answer__text {
font-size: var(--text-lg);
line-height: var(--leading-loose);
color: var(--color-text-muted);
margin: 0;
} .ap-bl-featured {
padding-block: var(--section-py);
background-color: var(--color-surface, #fff);
}
.ap-bl-featured__header {
display: flex;
align-items: flex-end;
justify-content: space-between;
flex-wrap: wrap;
gap: var(--space-4);
margin-bottom: var(--space-12);
}
.ap-bl-featured__title {
font-family: var(--font-display);
font-size: var(--text-3xl);
font-weight: 600;
color: var(--color-text);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
margin: 0;
}
.ap-bl-featured__title span {
color: var(--color-accent-dark);
}
.ap-bl-featured__all {
font-size: var(--text-sm);
font-weight: 600;
color: var(--color-accent);
text-decoration: none;
letter-spacing: var(--tracking-wide);
white-space: nowrap;
display: inline-flex;
align-items: center;
gap: var(--space-2);
transition: gap var(--duration-fast) var(--ease-out-expo);
}
.ap-bl-featured__all:hover {
gap: var(--space-3);
}
.ap-bl-featured__grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-8);
}
@media (min-width: 768px) {
.ap-bl-featured__grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (min-width: 1100px) {
.ap-bl-featured__grid {
grid-template-columns: repeat(3, 1fr);
}
} .ap-bl-filter {
padding-block: var(--space-10) var(--space-6);
background-color: var(--color-surface, #fff);
position: sticky;
top: 0;
z-index: 10;
border-bottom: 1px solid var(--color-border);
box-shadow: var(--shadow-sm);
}
.ap-bl-filter__inner {
display: flex;
flex-wrap: wrap;
gap: var(--space-2);
align-items: center;
}
.ap-bl-filter__btn {
display: inline-flex;
align-items: center;
padding: var(--space-2) var(--space-5);
border: 1.5px solid var(--color-border);
border-radius: var(--radius-full);
font-size: var(--text-sm);
font-weight: 500;
color: var(--color-text-muted);
background-color: transparent;
cursor: pointer;
text-decoration: none;
transition: border-color var(--duration-fast) var(--ease-out-expo),
color var(--duration-fast) var(--ease-out-expo),
background-color var(--duration-fast) var(--ease-out-expo);
}
.ap-bl-filter__btn:hover,
.ap-bl-filter__btn[aria-current="true"] {
border-color: var(--color-accent);
color: var(--color-obsidian);
background-color: rgba(200, 169, 110, 0.08);
}
.ap-bl-filter__btn--active {
border-color: var(--color-accent);
background-color: var(--color-accent);
color: var(--color-obsidian);
font-weight: 600;
}
.ap-bl-filter__btn--active:hover {
background-color: var(--color-accent-dark);
border-color: var(--color-accent-dark);
} .ap-bl-card {
display: flex;
flex-direction: column;
background-color: var(--color-surface, #fff);
border: 1px solid var(--color-border);
border-radius: var(--radius-lg);
overflow: hidden;
transition: box-shadow var(--duration-normal) var(--ease-out-expo),
border-color var(--duration-normal) var(--ease-out-expo),
transform var(--duration-normal) var(--ease-out-expo);
}
.ap-bl-card:hover {
box-shadow: var(--shadow-lg);
border-color: var(--color-accent);
transform: translateY(-3px);
}
.ap-bl-card__media {
position: relative;
overflow: hidden;
aspect-ratio: 16 / 9;
background-color: var(--color-slate-100);
}
.ap-bl-card__image {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform var(--duration-slow) var(--ease-out-expo);
}
.ap-bl-card:hover .ap-bl-card__image {
transform: scale(1.04);
}
.ap-bl-card__media-placeholder {
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
background-color: var(--color-slate-100);
}
.ap-bl-card__media-placeholder svg {
width: 40px;
height: 40px;
color: var(--color-slate-400);
}
.ap-bl-card__cat {
position: absolute;
top: var(--space-3);
left: var(--space-3);
display: inline-flex;
align-items: center;
padding: var(--space-1) var(--space-3);
background-color: rgba(245, 242, 237, 0.92);
border-radius: var(--radius-full);
font-size: var(--text-xs);
font-weight: 600;
color: var(--color-slate-800);
text-decoration: none;
letter-spacing: var(--tracking-wide);
text-transform: uppercase;
border: 1px solid var(--color-border);
transition: background-color var(--duration-fast);
}
.ap-bl-card__cat:hover {
background-color: var(--color-ivory);
}
.ap-bl-card__body {
padding: var(--space-6);
display: flex;
flex-direction: column;
flex: 1;
}
.ap-bl-card__title {
font-family: var(--font-display);
font-size: var(--text-xl);
font-weight: 600;
line-height: var(--leading-snug);
color: var(--color-text);
margin: 0 0 var(--space-3);
letter-spacing: var(--tracking-tight);
}
.ap-bl-card__title a {
color: inherit;
text-decoration: none;
transition: color var(--duration-fast);
}
.ap-bl-card__title a:hover {
color: var(--color-accent);
}
.ap-bl-card__excerpt {
font-size: var(--text-sm);
line-height: var(--leading-loose);
color: var(--color-text-muted);
margin: 0 0 var(--space-6);
flex: 1;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
overflow: hidden;
}
.ap-bl-card__footer {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: var(--space-2);
padding-top: var(--space-4);
border-top: 1px solid var(--color-border);
margin-top: auto;
}
.ap-bl-card__meta {
display: flex;
align-items: center;
gap: var(--space-4);
font-size: var(--text-xs);
color: var(--color-text-muted);
}
.ap-bl-card__meta-item {
display: flex;
align-items: center;
gap: var(--space-1);
}
.ap-bl-card__read-more {
font-size: var(--text-xs);
font-weight: 600;
color: var(--color-accent);
text-decoration: none;
letter-spacing: var(--tracking-wide);
text-transform: uppercase;
display: inline-flex;
align-items: center;
gap: var(--space-1);
transition: gap var(--duration-fast) var(--ease-out-expo),
color var(--duration-fast);
}
.ap-bl-card__read-more:hover {
gap: var(--space-2);
color: var(--color-accent-dark);
} .ap-bl-grid {
padding-block: var(--section-py);
background-color: var(--color-surface);
}
.ap-bl-grid__inner {
container-type: inline-size;
container-name: blog-grid;
}
.ap-bl-grid__posts {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-8);
}
@container blog-grid (min-width: 600px) {
.ap-bl-grid__posts {
grid-template-columns: repeat(2, 1fr);
}
}
@container blog-grid (min-width: 960px) {
.ap-bl-grid__posts {
grid-template-columns: repeat(3, 1fr);
}
}
.ap-bl-grid__none {
grid-column: 1 / -1;
text-align: center;
padding-block: var(--space-20);
color: var(--color-text-muted);
font-size: var(--text-lg);
} .ap-bl-pagination {
display: flex;
justify-content: center;
gap: var(--space-2);
flex-wrap: wrap;
margin-top: var(--space-16);
}
.ap-bl-pagination .page-numbers {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 44px;
height: 44px;
padding: 0 var(--space-3);
border: 1.5px solid var(--color-border);
border-radius: var(--radius-md);
font-size: var(--text-sm);
font-weight: 500;
color: var(--color-text-muted);
text-decoration: none;
transition: border-color var(--duration-fast),
color var(--duration-fast),
background-color var(--duration-fast);
}
.ap-bl-pagination .page-numbers:hover {
border-color: var(--color-accent);
color: var(--color-text);
}
.ap-bl-pagination .page-numbers.current {
background-color: var(--color-accent);
border-color: var(--color-accent);
color: var(--color-obsidian);
font-weight: 700;
} .ap-bl-knowledge {
padding-block: var(--section-py);
background-color: var(--color-surface, #fff);
}
.ap-bl-knowledge__header {
text-align: center;
max-width: 700px;
margin: 0 auto var(--space-12);
}
.ap-bl-knowledge__label {
font-size: var(--text-sm);
font-weight: 600;
letter-spacing: var(--tracking-wider);
text-transform: uppercase;
color: var(--color-accent);
margin-bottom: var(--space-4);
}
.ap-bl-knowledge__title {
font-family: var(--font-display);
font-size: var(--text-3xl);
font-weight: 600;
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
color: var(--color-text);
margin: 0;
}
.ap-bl-knowledge__wrap {
overflow-x: auto;
}
.ap-bl-knowledge__table {
width: 100%;
border-collapse: collapse;
font-size: var(--text-sm);
container-type: inline-size;
container-name: bl-ktable;
}
.ap-bl-knowledge__table th {
padding: var(--space-4) var(--space-6);
text-align: left;
font-weight: 700;
font-size: var(--text-xs);
letter-spacing: var(--tracking-wider);
text-transform: uppercase;
background-color: var(--color-obsidian);
color: var(--color-ivory);
border-bottom: 2px solid var(--color-accent);
}
.ap-bl-knowledge__table th:first-child {
border-radius: var(--radius-md) 0 0 0;
}
.ap-bl-knowledge__table th:last-child {
border-radius: 0 var(--radius-md) 0 0;
}
.ap-bl-knowledge__table td {
padding: var(--space-4) var(--space-6);
border-bottom: 1px solid var(--color-border);
color: var(--color-text);
line-height: var(--leading-normal);
vertical-align: top;
}
.ap-bl-knowledge__table td:first-child {
font-weight: 600;
color: var(--color-slate-800);
}
.ap-bl-knowledge__table tr:nth-child(even) td {
background-color: var(--color-slate-100);
}
.ap-bl-knowledge__table tr:last-child td:first-child {
border-radius: 0 0 0 var(--radius-md);
}
.ap-bl-knowledge__table tr:last-child td:last-child {
border-radius: 0 0 var(--radius-md) 0;
} .ap-bl-eeat {
padding-block: var(--section-py);
background-color: var(--color-ivory);
border-top: 1px solid var(--color-border);
}
.ap-bl-eeat__header {
max-width: 640px;
margin-bottom: var(--space-10);
}
.ap-bl-eeat__label {
font-size: var(--text-sm);
font-weight: 600;
letter-spacing: var(--tracking-wider);
text-transform: uppercase;
color: var(--color-accent);
margin-bottom: var(--space-3);
}
.ap-bl-eeat__title {
font-family: var(--font-display);
font-size: var(--text-3xl);
font-weight: 600;
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
color: var(--color-text);
margin: 0;
}
.ap-bl-eeat__grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-6);
}
@media (min-width: 700px) {
.ap-bl-eeat__grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (min-width: 1024px) {
.ap-bl-eeat__grid {
grid-template-columns: repeat(3, 1fr);
}
}
.ap-bl-eeat__item {
display: flex;
flex-direction: column;
gap: var(--space-3);
padding: var(--space-6);
border: 1px solid var(--color-border);
border-radius: var(--radius-lg);
background-color: var(--color-surface, #fff);
}
.ap-bl-eeat__icon {
width: 44px;
height: 44px;
color: var(--color-accent);
flex-shrink: 0;
}
.ap-bl-eeat__item-title {
font-weight: 700;
font-size: var(--text-base);
color: var(--color-text);
margin: 0;
}
.ap-bl-eeat__item-text {
font-size: var(--text-sm);
line-height: var(--leading-loose);
color: var(--color-text-muted);
margin: 0;
} .ap-bl-faq {
padding-block: var(--section-py);
background-color: var(--color-surface, #fff);
border-top: 1px solid var(--color-border);
}
.ap-bl-faq__inner {
max-width: 780px;
margin: 0 auto;
}
.ap-bl-faq__header {
text-align: center;
margin-bottom: var(--space-12);
}
.ap-bl-faq__label {
font-size: var(--text-sm);
font-weight: 600;
letter-spacing: var(--tracking-wider);
text-transform: uppercase;
color: var(--color-accent);
margin-bottom: var(--space-3);
}
.ap-bl-faq__title {
font-family: var(--font-display);
font-size: var(--text-3xl);
font-weight: 600;
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
color: var(--color-text);
margin: 0;
}
.ap-bl-faq__item {
border-bottom: 1px solid var(--color-border);
}
.ap-bl-faq__item summary {
list-style: none;
cursor: pointer;
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--space-4);
padding: var(--space-5) 0;
font-weight: 600;
color: var(--color-text);
transition: color var(--duration-fast);
}
.ap-bl-faq__item summary::-webkit-details-marker {
display: none;
}
.ap-bl-faq__item summary:hover {
color: var(--color-accent);
}
.ap-bl-faq__icon {
width: 20px;
height: 20px;
flex-shrink: 0;
color: var(--color-accent);
transition: transform var(--duration-normal) var(--ease-out-expo);
}
.ap-bl-faq__item[open] .ap-bl-faq__icon {
transform: rotate(45deg);
}
.ap-bl-faq__answer {
padding-bottom: var(--space-5);
font-size: var(--text-sm);
line-height: var(--leading-loose);
color: var(--color-text-muted);
}
.ap-bl-faq__answer p {
margin: 0;
} .ap-bl-cta {
padding-block: var(--section-py);
background-color: var(--color-obsidian);
text-align: center;
position: relative;
overflow: hidden;
}
.ap-bl-cta__bg-line {
position: absolute;
inset: 0;
pointer-events: none;
opacity: 0.04;
background-image:
linear-gradient(var(--color-accent) 1px, transparent 1px),
linear-gradient(90deg, var(--color-accent) 1px, transparent 1px);
background-size: 60px 60px;
}
.ap-bl-cta__inner {
position: relative;
z-index: 1;
max-width: 680px;
margin: 0 auto;
}
.ap-bl-cta__eyebrow {
font-size: var(--text-sm);
font-weight: 600;
letter-spacing: var(--tracking-wider);
text-transform: uppercase;
color: var(--color-accent);
margin-bottom: var(--space-4);
}
.ap-bl-cta__title {
font-family: var(--font-display);
font-size: var(--text-4xl);
font-weight: 600;
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
color: var(--color-ivory);
margin: 0 0 var(--space-6);
}
.ap-bl-cta__text {
font-size: var(--text-lg);
line-height: var(--leading-normal);
color: rgba(245, 242, 237, 0.65);
margin: 0 0 var(--space-10);
}
.ap-bl-cta__actions {
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: var(--space-4);
} @keyframes ap-bl-fade-up {
from {
opacity: 0;
translate: 0 28px;
}
to {
opacity: 1;
translate: 0 0;
}
}
.ap-bl-reveal {
opacity: 1;
}
@supports (animation-timeline: view()) {
.ap-bl-reveal {
animation: ap-bl-fade-up linear both;
animation-timeline: view();
animation-range: entry 0% entry 28%;
}
} @media (prefers-reduced-motion: reduce) {
.ap-bl-card {
transition: none;
}
.ap-bl-card:hover {
transform: none;
}
.ap-bl-reveal {
animation: none;
opacity: 1;
}
}