/* Generated per-site stylesheet — self-hosted fonts, no CDN. */
/* palette=yadro-emerald-pink font=manrope-inter layout=layout_pricing_card_focus nav=side-vertical-left */

@font-face {
  font-family: "Manrope";
  src: url("/fonts/Manrope.m83nb2yc") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("/fonts/Inter.m83nb2yc") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  --gumj93s5: #ECFDF5;
  --tr458ly2: #FFFFFF;
  --hk6ra4e8: #0F1320;
  --qkr1it7d: #5A6273;
  --exeuvyc5: #059669;
  --kiwl5y6b: #DB2777;
  --f2ms26ti: #D6E6DE;
  --k2l54cei: 'Manrope', system-ui, sans-serif;
  --qdg1xqnj: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --emli6bvt: 0;
  --lff69oi7: 1180px;
  --o1y1grwb: 22px;
  --pgyas02g: #ECFDF5;
  --tbks8i7s: 18px;
  --wq6ho2vj: 1.7;
  --i1rnb210: 1rem;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
html { background: var(--gumj93s5); color: var(--hk6ra4e8); -webkit-font-smoothing: antialiased; }
body { font-family: var(--qdg1xqnj); font-size: var(--tbks8i7s); line-height: var(--wq6ho2vj); color: var(--hk6ra4e8); background: var(--gumj93s5); }
a { color: var(--exeuvyc5); text-decoration: none; border-bottom: 1px solid transparent; transition: border-color .15s ease; }
a:hover { border-bottom-color: currentColor; }
h1, h2, h3, h4 { font-family: var(--k2l54cei); font-weight: 700; line-height: 1.12; margin: 0 0 .5em; color: var(--hk6ra4e8); letter-spacing: -0.01em; }
h1 { font-size: clamp(2.2rem, 5vw, 3.8rem); }
h2 { font-size: clamp(1.4rem, 2.6vw, 2rem); }
h3 { font-size: 1.15rem; }
p { margin: 0 0 1em; }
img, svg { max-width: 100%; display: block; }

/* ============== HEADER ============== */
.kqfvndc2 { max-width: var(--lff69oi7); margin: 0 auto; padding: 22px 28px; display: flex; align-items: center; justify-content: space-between; }
.rureqg5b { display: inline-flex; align-items: center; gap: 10px; color: var(--hk6ra4e8); border: 0; font-family: var(--k2l54cei); font-weight: 700; font-size: 1.1rem; letter-spacing: -0.01em; }
.vkgsgq8v { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 8px; background: var(--exeuvyc5); color: var(--pgyas02g); font-weight: 800; font-family: var(--k2l54cei); font-size: 1rem; }
.vmglxup9 a { margin-left: 18px; color: var(--qkr1it7d); border: 0; font-size: 0.95rem; }
.vmglxup9 a:hover { color: var(--hk6ra4e8); }

/* Floating pill nav variant */
.argfik18 { position: sticky; top: 16px; width: fit-content; margin: 16px auto; background: var(--tr458ly2); border: 1px solid var(--f2ms26ti); border-radius: 999px; padding: 8px 22px; box-shadow: 0 12px 32px rgba(0,0,0,0.12); }
.argfik18 .vmglxup9 a { margin-left: 14px; }

/* Hidden menu variant */
.af5lpj9a { position: relative; }
.af5lpj9a summary { cursor: pointer; list-style: none; font-size: 1.4rem; padding: 4px 10px; color: var(--hk6ra4e8); }
.af5lpj9a summary::-webkit-details-marker { display: none; }
.af5lpj9a[open] .vmglxup9 { display: flex; flex-direction: column; position: absolute; right: 0; top: 36px; background: var(--tr458ly2); border: 1px solid var(--f2ms26ti); border-radius: 10px; padding: 14px 20px; z-index: 10; gap: 8px; }

/* ============== SIDEBAR NAV ============== */
.mwhzunv1 { position: fixed; top: 0; width: 220px; height: 100vh; background: var(--tr458ly2); border-right: 1px solid var(--f2ms26ti); padding: 30px 22px; display: flex; flex-direction: column; gap: 24px; z-index: 5; overflow-y: auto; }
.t9f8s7zx { left: 0; }
.z1ysfn82 { right: 0; border-right: 0; border-left: 1px solid var(--f2ms26ti); }
.mwhzunv1 .vmglxup9 { display: flex; flex-direction: column; gap: 4px; }
.mwhzunv1 .vmglxup9 a { margin: 0; padding: 8px 10px; border-radius: 8px; }
.mwhzunv1 .vmglxup9 a:hover { background: var(--gumj93s5); color: var(--hk6ra4e8); }
/* When a sidebar is present, push the main column inward so it doesn't
   sit under the fixed aside. We override max-width/margin to let content
   fill the remaining viewport. */
body.irpvn2l2 .tvfrsatm { max-width: none; margin-left: 240px; margin-right: auto; padding: 16px 32px 48px; }
body.v58ved4s .tvfrsatm { max-width: none; margin-right: 240px; margin-left: auto; padding: 16px 32px 48px; }
body.irpvn2l2 .tvfrsatm > * { max-width: 960px; }
body.v58ved4s .tvfrsatm > * { max-width: 960px; }

/* ============== FOOTER ============== */
.ibaswgsi { border-top: 1px solid var(--f2ms26ti); margin-top: 88px; padding: 36px 28px 52px; }
.sx97yy9c { max-width: var(--lff69oi7); margin: 0 auto; display: flex; flex-direction: column; align-items: center; gap: 10px; color: var(--qkr1it7d); font-size: 0.95rem; }
.tvrryl2q a { margin: 0 12px; color: var(--qkr1it7d); }
.ivjzb3qk { max-width: var(--lff69oi7); margin: 0 auto; display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 48px; }
.l3zsa4nr { font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--qkr1it7d); }
.tet89esv { list-style: none; padding: 0; margin: 0; }
.tet89esv li { margin-bottom: 6px; }
.tet89esv a { color: var(--hk6ra4e8); border: 0; }
.pkxnbdvt { color: var(--qkr1it7d); }
.o28958vi { color: var(--qkr1it7d); font-size: 0.85rem; margin-top: 18px; }
.adbtnsdl { max-width: var(--lff69oi7); margin: 0 auto; display: flex; justify-content: space-between; align-items: center; gap: 32px; flex-wrap: wrap; }
.s7gre99f { display: flex; gap: 14px; align-items: baseline; }
.gfqqrahe { font-family: var(--k2l54cei); font-weight: 700; }
.m4rsh55w { color: var(--qkr1it7d); }
.yjfby35r a { margin-left: 16px; color: var(--qkr1it7d); }
.yjfby35r { display: flex; gap: 14px; align-items: center; }
.t9f6dhs9 { color: var(--qkr1it7d); font-size: 0.9rem; }
.nuff6we7 { max-width: var(--lff69oi7); margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
.nuff6we7 ul { list-style: none; padding: 0; margin: 0; }
.nuff6we7 li a { color: var(--qkr1it7d); }
.u04pd5cp { color: var(--qkr1it7d); font-size: 0.85rem; }

/* ============== MAIN LAYOUTS ============== */
.tvfrsatm { max-width: var(--lff69oi7); margin: 0 auto; padding: 16px 28px 48px; }

/* Layout-specific overrides live in block styles; each layout HTML template
   uses unique class names .l-... so we namespace. */
.updza6h5 .te0n2atm { text-align: center; padding: 56px 0 72px; }
.updza6h5 .fbqkhfh9 { max-width: 22ch; margin: 0 auto 18px; }
.updza6h5 .y4z9kie1 { color: var(--qkr1it7d); font-size: 1.1rem; max-width: 48ch; margin: 0 auto 24px; }
.updza6h5 .x2oz63do { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--o1y1grwb); padding: 40px 0; text-align: left; }

.s3se1o0z { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 56px; padding: 48px 0 80px; align-items: center; }
.hqxepde5 { background: var(--tr458ly2); border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 28px; min-height: 320px; }

.hnurkkao { border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 56px 40px; background: var(--tr458ly2); }
.yxkopun1 { display: grid; grid-template-columns: repeat(6, 1fr); grid-auto-rows: 170px; gap: var(--o1y1grwb); margin-top: 22px; }
.rrbx5zp6 { grid-column: span 2; border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 22px; background: var(--tr458ly2); display: flex; flex-direction: column; justify-content: space-between; }
.rrbx5zp6:nth-child(1), .rrbx5zp6:nth-child(4) { grid-column: span 4; }

.gszdbs18 { columns: 2; column-gap: 44px; padding: 48px 0; }
.gszdbs18 h1 { column-span: all; max-width: 20ch; font-size: 3.2rem; }
.gszdbs18 .wg2qi4d3 { break-inside: avoid; margin-bottom: 28px; }

.av8tcm6i { position: relative; margin: 0 -28px; padding: 80px 28px 120px; background: linear-gradient(135deg, var(--exeuvyc5) 0%, var(--kiwl5y6b) 100%); color: var(--pgyas02g); }
.av8tcm6i h1 { color: var(--pgyas02g); max-width: 22ch; }
.av8tcm6i .y4z9kie1 { color: var(--pgyas02g); opacity: 0.9; }
.av8tcm6i .uxz0qcrj { background: var(--pgyas02g); color: var(--exeuvyc5); padding: 14px 28px; border-radius: var(--emli6bvt); font-weight: 700; display: inline-block; margin-top: 14px; }
.e3v99ptg { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 48px; align-items: center; max-width: var(--lff69oi7); margin: 0 auto; }
.e3v99ptg .b7zwpvsx img { box-shadow: 0 30px 70px rgba(0,0,0,0.28); }
@media (max-width: 860px) { .e3v99ptg { grid-template-columns: 1fr; gap: 28px; } }

.fj21s7i3 .wg2qi4d3 { padding: 48px 0; border-bottom: 1px solid var(--f2ms26ti); display: grid; grid-template-columns: 80px 1fr; gap: 28px; align-items: start; }
.fj21s7i3 .zlvnbjk7 { font-family: var(--k2l54cei); font-size: 2.4rem; color: var(--exeuvyc5); line-height: 1; }

.no6631sf { min-height: 80vh; display: flex; flex-direction: column; justify-content: center; text-align: center; }
.no6631sf h1 { font-size: clamp(3rem, 8vw, 6rem); }

.k9u2liku { border: 3px solid var(--hk6ra4e8); padding: 44px; margin: 30px 0; background: var(--tr458ly2); }
.k9u2liku h1 { text-transform: uppercase; border-bottom: 3px solid var(--hk6ra4e8); padding-bottom: 20px; }
.k9u2liku .wg2qi4d3 { border: 2px solid var(--hk6ra4e8); padding: 18px; background: var(--gumj93s5); margin-top: 12px; }

.rcgjikht { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 240px; gap: var(--o1y1grwb); padding: 30px 0; }
.rcgjikht .wg2qi4d3 { border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 22px; background: var(--tr458ly2); display: flex; flex-direction: column; justify-content: space-between; }
.rcgjikht .wg2qi4d3:first-child { grid-column: span 2; grid-row: span 2; padding: 36px; }

.o1xnzim6 { display: grid; grid-template-columns: repeat(2, 1fr); grid-auto-rows: 220px; gap: var(--o1y1grwb); padding: 30px 0; }
.o1xnzim6 .wg2qi4d3 { border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 22px; background: var(--tr458ly2); }

.otdzixev { display: grid; grid-template-columns: 4fr 6fr; gap: 48px; padding: 50px 0; align-items: start; }
.oz9n0v1f { display: grid; grid-template-columns: 7fr 3fr; gap: 48px; padding: 50px 0; align-items: start; }

.kxscz1g2 { position: relative; padding: 50px 0; }
.kxscz1g2 .wg2qi4d3 { background: var(--tr458ly2); border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 28px; margin-top: -20px; box-shadow: 0 18px 40px rgba(0,0,0,0.08); max-width: 600px; margin-left: auto; margin-right: auto; }
.kxscz1g2 .wg2qi4d3:first-child { margin-top: 0; }

.fffsjhrz { padding: 30px 0; }
.fffsjhrz .u5ul1389 { display: flex; gap: 0; border-bottom: 2px solid var(--f2ms26ti); margin-bottom: 28px; }
.fffsjhrz .ve25wexr { padding: 12px 20px; color: var(--qkr1it7d); cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -2px; font-weight: 600; }
.fffsjhrz .ve25wexr.pxho4vw2 { color: var(--hk6ra4e8); border-bottom-color: var(--exeuvyc5); }
.fffsjhrz .syt0kxog .wg2qi4d3 { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; padding: 24px 0; }

.t6zb8u2t details { border-bottom: 1px solid var(--f2ms26ti); padding: 18px 0; }
.t6zb8u2t summary { cursor: pointer; list-style: none; font-family: var(--k2l54cei); font-weight: 600; font-size: 1.15rem; }
.t6zb8u2t summary::-webkit-details-marker { display: none; }
.t6zb8u2t summary::after { content: '+'; float: right; color: var(--exeuvyc5); }
.t6zb8u2t details[open] summary::after { content: '−'; }

.gp3f7j08 { display: grid; grid-template-columns: 1fr 1.3fr; gap: 44px; padding: 50px 0; align-items: start; }
.gmtywklf { background: var(--tr458ly2); border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 24px; min-height: 360px; display: grid; grid-template-rows: 40px 1fr; gap: 14px; }
.rtr3awsf { display: flex; gap: 6px; }
.rtr3awsf span { width: 10px; height: 10px; border-radius: 50%; background: var(--f2ms26ti); }

.rw1qrdag { position: relative; padding: 30px 0 30px 40px; border-left: 2px solid var(--f2ms26ti); }
.rw1qrdag .wg2qi4d3 { position: relative; padding: 18px 0 18px 12px; }
.rw1qrdag .wg2qi4d3::before { content: ''; position: absolute; left: -46px; top: 28px; width: 12px; height: 12px; border-radius: 50%; background: var(--exeuvyc5); }

.msfi9nln { display: flex; overflow-x: auto; gap: 24px; padding: 30px 0; }
.msfi9nln .wg2qi4d3 { min-width: 260px; border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 22px; background: var(--tr458ly2); }

.zae0ss4n table { width: 100%; border-collapse: collapse; margin: 30px 0; }
.zae0ss4n th, .zae0ss4n td { padding: 14px 16px; border-bottom: 1px solid var(--f2ms26ti); text-align: left; }
.zae0ss4n th { background: var(--tr458ly2); font-family: var(--k2l54cei); }

.kdj6vzrw { text-align: center; padding: 50px 0; }
.kdj6vzrw .kxnr01de { display: inline-block; background: var(--tr458ly2); border: 2px solid var(--exeuvyc5); border-radius: var(--emli6bvt); padding: 40px 60px; min-width: 320px; margin-top: 30px; }
.kdj6vzrw .cbaumctf { font-family: var(--k2l54cei); font-size: 4rem; color: var(--exeuvyc5); }

.slz91nc0 { text-align: center; padding: 80px 28px; max-width: 780px; margin: 0 auto; }
.slz91nc0 blockquote { font-family: var(--k2l54cei); font-size: 2rem; line-height: 1.25; margin: 0 0 24px; color: var(--hk6ra4e8); }
.slz91nc0 cite { color: var(--qkr1it7d); }

.kjwtr6h4 { padding: 30px 0; }
.kjwtr6h4 h1 { margin-bottom: 40px; max-width: 20ch; }
.kjwtr6h4 details { border-bottom: 1px solid var(--f2ms26ti); padding: 18px 0; }
.kjwtr6h4 summary { cursor: pointer; list-style: none; font-family: var(--k2l54cei); font-weight: 600; }
.kjwtr6h4 summary::-webkit-details-marker { display: none; }

.uwi60r4k { padding: 30px 0; }
.uwi60r4k .wg2qi4d3 { max-width: 60ch; margin: 60px auto; }
.uwi60r4k .wg2qi4d3 h3 { font-size: 1.6rem; margin-bottom: 12px; }

.irrpo4d0 { position: relative; padding: 80px 0; }
.irrpo4d0::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, var(--tr458ly2) 40%, var(--gumj93s5) 60%); z-index: -1; }

.ybai88ie { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 28px; padding: 40px 0; }
.ybai88ie .wg2qi4d3 { background: var(--tr458ly2); border: 1px solid var(--f2ms26ti); clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%); padding: 44px 22px; text-align: center; min-height: 200px; display: flex; flex-direction: column; justify-content: center; }

.rvmmk419 { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 30px; padding: 40px 0; text-align: center; }
.rvmmk419 .wg2qi4d3 { padding: 20px; }
.rvmmk419 .dcl0hw68 { width: 92px; height: 92px; border-radius: 50%; background: var(--tr458ly2); border: 2px solid var(--exeuvyc5); display: inline-flex; align-items: center; justify-content: center; color: var(--exeuvyc5); margin-bottom: 16px; }

.ll4kxvt8 { padding: 40px 0; }
.ax9xpi7j { font-size: clamp(3rem, 7vw, 5rem); max-width: 20ch; }
.jg7rzo22 { display: flex; overflow-x: auto; gap: 20px; margin-top: 30px; scroll-snap-type: x mandatory; padding-bottom: 12px; }
.jg7rzo22 .wg2qi4d3 { min-width: 320px; scroll-snap-align: start; border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); padding: 24px; background: var(--tr458ly2); }

.oum6b31r { display: grid; grid-template-columns: 1fr 1fr; gap: 0; min-height: 70vh; position: relative; }
.fwdc28xc { padding: 60px 40px; background: var(--tr458ly2); clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%); }
.yduvwdfr { padding: 60px 40px; background: var(--gumj93s5); }

/* Shared feature grid classes */
.wg2qi4d3 { background: transparent; }
.dcl0hw68 { color: var(--exeuvyc5); margin-bottom: 14px; width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; }
.dcl0hw68 .r3e5gjii { width: 28px; height: 28px; }
.hiztksx3 { font-size: 1.12rem; margin-bottom: 6px; }
.gxmtir14 { color: var(--qkr1it7d); font-size: 0.98rem; }

/* AI hero image — shared presentation block */
.b7zwpvsx { margin: 0; display: flex; justify-content: center; align-items: center; }
.b7zwpvsx img { width: 100%; max-width: 480px; height: auto; display: block; border-radius: calc(var(--emli6bvt) * 1.4); box-shadow: 0 24px 64px rgba(0,0,0,0.18); }
.lt5ilhj3 { margin-left: auto; }
.nbl0x8z7 { width: 100%; margin: 32px 0; }
.nbl0x8z7 img { max-width: min(720px, 100%); margin: 0 auto; }
.pohs2tq3 { margin: 18px 0 28px; }
.pohs2tq3 img { max-width: min(560px, 100%); }
.bkq08rxn { width: 100%; margin: 0 0 24px; }
.bkq08rxn img { width: 100%; max-width: 1100px; aspect-ratio: 16/6; object-fit: cover; margin: 0 auto; }
@media (max-width: 640px) { .b7zwpvsx img { max-width: 100%; border-radius: var(--emli6bvt); box-shadow: 0 10px 30px rgba(0,0,0,0.15); } }

/* Hero decor utilities */
.fbqkhfh9 { max-width: 24ch; word-wrap: break-word; overflow-wrap: break-word; hyphens: auto; }
.y4z9kie1 { color: var(--qkr1it7d); font-size: 1.15rem; max-width: 52ch; word-wrap: break-word; overflow-wrap: break-word; }
.uxz0qcrj { display: inline-block; padding: 13px 26px; border-radius: 999px; background: var(--exeuvyc5); color: var(--pgyas02g); font-weight: 700; font-family: var(--k2l54cei); border: 0; margin-top: 16px; white-space: nowrap; }
h1 { word-wrap: break-word; overflow-wrap: break-word; }

.oxjvfdc8 { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.ij2gq9c3 { background: radial-gradient(1200px 600px at 80% -10%, var(--kiwl5y6b) 0%, transparent 50%), radial-gradient(800px 400px at 10% 30%, var(--exeuvyc5) 0%, transparent 55%); }
.foa0yv9c { background: repeating-linear-gradient(135deg, var(--tr458ly2) 0 24px, var(--gumj93s5) 24px 48px); opacity: 0.6; }
.e98yf91a { background-image: radial-gradient(circle at 10px 10px, var(--f2ms26ti) 1px, transparent 1px); background-size: 22px 22px; opacity: 0.6; }
.xx4phpj0 { background-image: linear-gradient(var(--f2ms26ti) 1px, transparent 1px), linear-gradient(90deg, var(--f2ms26ti) 1px, transparent 1px); background-size: 24px 24px; opacity: 0.5; }
.zpsu6vwy { border: 2px solid var(--exeuvyc5); transform: translate(8px, 8px); border-radius: var(--emli6bvt); }
.fugski73 { background: var(--exeuvyc5); }
.gfx7ymbr { white-space: nowrap; font-family: var(--k2l54cei); font-size: 5rem; overflow: hidden; opacity: 0.15; display: flex; animation: marquee 30s linear infinite; }
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.wrv0euo4 { background: linear-gradient(90deg, var(--exeuvyc5) 50%, var(--kiwl5y6b) 50%); }

/* Privacy / support shared */
.t0zpypwe { max-width: 760px; margin: 0 auto; padding: 20px 28px 48px; }
.t0zpypwe .e1t2xaa3 { padding: 28px 0 12px; }
.t0zpypwe .ks8gqsi9 { color: var(--exeuvyc5); font-size: 0.85rem; letter-spacing: 0.18em; text-transform: uppercase; font-weight: 700; }
.t0zpypwe .o1b0eeak { color: var(--qkr1it7d); }
.t0zpypwe .z48hn0dh { padding: 20px 22px; border: 1px solid var(--f2ms26ti); border-radius: var(--emli6bvt); margin: 28px 0; background: var(--tr458ly2); }
.t0zpypwe .z48hn0dh ol { margin: 0; padding-left: 22px; color: var(--qkr1it7d); }
.t0zpypwe .z48hn0dh a { color: var(--hk6ra4e8); border: 0; }
.t0zpypwe article h2 { margin-top: 40px; font-size: 1.45rem; }
.t0zpypwe article p { color: var(--hk6ra4e8); }

.wuhj552e { max-width: 820px; margin: 0 auto; padding: 20px 28px 48px; }
.wuhj552e .x5ly7xay { padding: 28px 0 10px; }
.wuhj552e .p97l5xak { margin-top: 16px; }
.wuhj552e details.f8mrmsv4 { border-bottom: 1px solid var(--f2ms26ti); padding: 18px 0; }
.wuhj552e details.f8mrmsv4 summary { cursor: pointer; list-style: none; font-family: var(--k2l54cei); font-weight: 600; font-size: 1.08rem; display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.wuhj552e details.f8mrmsv4 summary::-webkit-details-marker { display: none; }
.wuhj552e details.f8mrmsv4 summary::after { content: '+'; color: var(--exeuvyc5); font-size: 1.4rem; font-weight: 400; }
.wuhj552e details.f8mrmsv4[open] summary::after { content: '−'; }
.wuhj552e details.f8mrmsv4 p { color: var(--qkr1it7d); margin-top: 10px; }
.wuhj552e .fiyqm7zu { margin-top: 48px; padding: 28px; border-radius: var(--emli6bvt); background: var(--tr458ly2); border: 1px solid var(--f2ms26ti); display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
.wuhj552e .fiyqm7zu strong { font-family: var(--k2l54cei); font-size: 1.2rem; }
.wuhj552e .fiyqm7zu a { padding: 10px 18px; border-radius: var(--emli6bvt); background: var(--exeuvyc5); color: var(--pgyas02g); border: 0; font-weight: 600; }

/* ============== ANIMATIONS (subtle, classy) ============== */
@keyframes fadeUp { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes slideInLeft { from { opacity: 0; transform: translateX(-14px); } to { opacity: 1; transform: none; } }
@keyframes scaleIn { from { opacity: 0; transform: scale(0.98); } to { opacity: 1; transform: none; } }
@keyframes gradientDrift { 0% { background-position: 0% 0%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 0%; } }
@keyframes iconPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.06); } }
@keyframes slowSpin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

[data-reveal] { opacity: 0; transform: translateY(14px); transition: opacity .5s ease-out, transform .5s ease-out; }
[data-reveal].t4l7m3lr { opacity: 1; transform: none; }

.wg2qi4d3 { transition: transform .2s ease, box-shadow .2s ease; }
.wg2qi4d3:hover { transform: translateY(-2px); }
.dcl0hw68 { transition: transform .3s ease; }
.wg2qi4d3:hover .dcl0hw68 { transform: scale(1.08) rotate(2deg); }

.uxz0qcrj { transition: transform .15s ease, box-shadow .15s ease; }
.uxz0qcrj:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(0,0,0,0.12); }


/* Reading progress for legal pages */
body.t0zpypwe::before {
  content: ''; position: fixed; top: 0; left: 0; height: 3px;
  background: var(--exeuvyc5); width: var(--nk5lnsod, 0%);
  z-index: 100; transition: width .1s linear;
}

/* Responsive */
@media (max-width: 960px) {
  .mwhzunv1 { position: static; width: auto; height: auto; border: 0; border-bottom: 1px solid var(--f2ms26ti); flex-direction: row; flex-wrap: wrap; gap: 10px; padding: 14px 20px; }
  .mwhzunv1 .vmglxup9 { flex-direction: row; gap: 12px; }
  body.irpvn2l2 .tvfrsatm,
  body.v58ved4s .tvfrsatm { margin-left: auto; margin-right: auto; padding: 16px 22px 48px; max-width: var(--lff69oi7); }
  body.irpvn2l2 .tvfrsatm > *,
  body.v58ved4s .tvfrsatm > * { max-width: 100%; }
  .s3se1o0z, .otdzixev, .oz9n0v1f, .gp3f7j08, .oum6b31r { grid-template-columns: 1fr; gap: 32px; }
  .fwdc28xc { clip-path: none; }
  .gszdbs18 { columns: 1; }
  .rcgjikht, .o1xnzim6, .yxkopun1 { grid-template-columns: 1fr; grid-auto-rows: auto; }
  .rcgjikht .wg2qi4d3:first-child, .rrbx5zp6, .rrbx5zp6:nth-child(1), .rrbx5zp6:nth-child(4) { grid-column: span 1; }
  .fffsjhrz .syt0kxog .wg2qi4d3 { grid-template-columns: 1fr; }
  .updza6h5 .x2oz63do { grid-template-columns: 1fr; }
  .ivjzb3qk, .nuff6we7 { grid-template-columns: 1fr; gap: 24px; }
  .kqfvndc2 { padding: 16px 20px; flex-wrap: wrap; gap: 10px; }
  .vmglxup9 a { margin-left: 12px; }
  .gszdbs18 h1 { font-size: clamp(2rem, 7vw, 2.8rem); }
  h1 { font-size: clamp(1.8rem, 6.5vw, 2.8rem); word-wrap: break-word; overflow-wrap: anywhere; }
  .av8tcm6i { margin: 0 -22px; padding: 60px 22px 80px; }
}
@media (max-width: 520px) {
  h1 { font-size: clamp(1.5rem, 7vw, 2.2rem); }
  .uxz0qcrj { padding: 11px 22px; }
  .tvfrsatm { padding: 12px 18px 36px; }
  body.irpvn2l2 .tvfrsatm,
  body.v58ved4s .tvfrsatm { padding: 12px 18px 36px; }
}