/* Shared design system for inner pages (About, Services, Contact, Gallery, Careers, Blogs, legal).
   Same look as the home page: soft shader background, glass cards, gradient type, big motion. */
:root{ --pg-ink:#1b1f2a; --pg-mute:#555d72; --pg-or:#f5821f; --pg-pk:#ff5e8a; --pg-vi:#7c5cff; --pg-cy:#14b8cf; --pg-line:rgba(27,31,42,.1); }
html,body{ overflow-x:clip; }
.pg{ font-family:'Inter',system-ui,sans-serif; color:var(--pg-ink); overflow-x:clip; }
.pg h1,.pg h2,.pg h3,.pg h4,.pg h5{ font-family:'Bricolage Grotesque','Inter',sans-serif; letter-spacing:-.025em; color:inherit; }
.pg p{ color:var(--pg-mute); }
.pg a{ text-decoration:none; }
.pg .grad{ background:linear-gradient(100deg,var(--pg-or),var(--pg-pk) 45%,var(--pg-vi)); background-size:200% 100%; -webkit-background-clip:text; background-clip:text; color:transparent; animation:pgShift 6s ease-in-out infinite alternate; }
@keyframes pgShift{ to{ background-position:100% 0; } }
@keyframes pgSpin{ to{ transform:rotate(360deg); } }
@keyframes pgBob{ 50%{ translate:0 -12px; } }
@keyframes pgOrb{ to{ transform:translate(30px,-46px) rotate(40deg); } }

.pg-sec{ position:relative; padding:6rem 0; isolation:isolate; }
.pg-sec > .container{ position:relative; z-index:2; }
.pg-bgfx{ position:absolute; inset:0; z-index:0; pointer-events:none; }
.pg .glass{ background:rgba(255,255,255,.62); border:1px solid rgba(255,255,255,.9); backdrop-filter:blur(16px) saturate(150%); -webkit-backdrop-filter:blur(16px) saturate(150%); box-shadow:0 20px 50px rgba(120,70,40,.12); }
.pg-eyebrow{ display:inline-flex; align-items:center; gap:.6rem; font-size:.74rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--pg-or); margin-bottom:.9rem; }
.pg-eyebrow::before{ content:''; width:8px; height:8px; border-radius:50%; background:var(--pg-or); box-shadow:0 0 0 4px rgba(245,130,31,.2); animation:pgPing 2s infinite; }
@keyframes pgPing{ 70%{ box-shadow:0 0 0 10px rgba(245,130,31,0); } 100%{ box-shadow:0 0 0 0 rgba(245,130,31,0); } }
.pg-h2{ font-size:clamp(2rem,4.2vw,3.3rem); line-height:1.06; font-weight:800; margin:0 0 1rem; }
.pg-lead{ font-size:1.05rem; line-height:1.7; max-width:620px; }
.pg-center{ text-align:center; } .pg-center .pg-lead{ margin-inline:auto; }

/* buttons */
.pg-btn{ position:relative; display:inline-flex; align-items:center; gap:.6rem; padding:.95rem 1.6rem; border-radius:99px; font-weight:600; overflow:hidden; transition:transform .25s,box-shadow .25s,color .25s; will-change:transform; border:0; cursor:pointer; font-family:inherit; font-size:1rem; }
.pg-btn:hover{ transform:translateY(-3px); }
.pg-btn.pri{ color:#fff; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); box-shadow:0 12px 30px rgba(255,94,58,.35); } .pg-btn.pri:hover{ color:#fff; box-shadow:0 16px 40px rgba(255,94,58,.5); }
.pg-btn.pri::after{ content:''; position:absolute; inset:0; background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.5) 50%,transparent 70%); transform:translateX(-120%); animation:pgSheen 3.4s ease-in-out infinite; }
@keyframes pgSheen{ 60%,100%{ transform:translateX(120%); } }
.pg-btn.sec{ color:var(--pg-ink); background:rgba(255,255,255,.8); border:1px solid var(--pg-line); } .pg-btn.sec:hover{ color:var(--pg-or); }
.pg-btn i{ transition:transform .3s; } .pg-btn:hover .fa-arrow-right{ transform:translateX(5px); }

/* reveal */
.pg .rv{ opacity:0; transform:translateY(40px) scale(.98); filter:blur(8px); transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1),filter .9s; transition-delay:var(--d,0ms); }
.pg .rv.on{ opacity:1; transform:none; filter:none; }
.pg .rv.fl{ transform:translateX(-60px); } .pg .rv.fr{ transform:translateX(60px); } .pg .rv.zi{ transform:scale(.88); } .pg .rv.fl.on,.pg .rv.fr.on,.pg .rv.zi.on{ transform:none; }
/* fall-in: card drops in from beyond the screen edge and lands with a bounce */
.pg .rv.fall{ --ox:-60vw; transform:none; filter:none; opacity:0; translate:var(--ox) -90vh; rotate:calc(var(--ox) * .2); transition:translate 1.7s cubic-bezier(.4,.1,.3,1.25) var(--d,0ms),rotate 1.7s cubic-bezier(.4,.1,.3,1.25) var(--d,0ms),opacity .5s var(--d,0ms),transform .45s cubic-bezier(.2,.7,.2,1); }
.pg .rv.fall:nth-child(even){ --ox:60vw; }
.pg .rv.fall.on{ opacity:1; translate:0 0; rotate:0deg; }
@media (max-width:575px){ .pg .rv.fall{ --ox:-35vw; } .pg .rv.fall:nth-child(even){ --ox:35vw; } }
.pg .spot{ position:relative; overflow:clip; }
.pg .spot::before{ content:''; position:absolute; inset:0; background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.55),transparent 45%); opacity:0; transition:opacity .3s; pointer-events:none; z-index:1; }
.pg .spot:hover::before{ opacity:1; }

/* ============ page hero ============ */
.pg-hero{ position:relative; padding:5.2rem 0 4rem; isolation:isolate; }
.pg-hero > .container{ position:relative; z-index:2; }
.pg-orb{ position:absolute; border-radius:50%; animation:pgOrb 14s ease-in-out infinite alternate; }
.pg-orb.o1{ width:130px; height:130px; right:9%; top:16%; background:radial-gradient(circle at 30% 30%,#fff,#ffb066 45%,#ff5e8a); box-shadow:0 30px 60px rgba(255,94,58,.35); }
.pg-orb.o2{ width:68px; height:68px; right:26%; top:62%; background:radial-gradient(circle at 30% 30%,#fff,#a99bff 50%,#7c5cff); box-shadow:0 20px 40px rgba(124,92,255,.35); animation-delay:-5s; }
.pg-hero .pg-ring{ position:absolute; right:-6%; top:-30%; width:520px; height:520px; border-radius:50%; border:2px dashed rgba(245,130,31,.35); animation:pgSpin 50s linear infinite; }
.pg-hero .pg-ring.r2{ right:2%; top:-18%; width:340px; height:340px; border-color:rgba(124,92,255,.3); animation-direction:reverse; animation-duration:36s; }
.pg-crumb{ display:inline-flex; align-items:center; gap:.7rem; padding:.45rem 1.1rem; border-radius:99px; font-size:.8rem; color:var(--pg-mute); }
.pg-crumb a{ color:var(--pg-mute); transition:color .3s; } .pg-crumb a:hover{ color:var(--pg-or); } .pg-crumb i{ font-size:.6rem; opacity:.6; } .pg-crumb span{ color:var(--pg-or); font-weight:600; }
.pg-h1{ font-size:clamp(2.6rem,6.2vw,5rem); line-height:1.02; font-weight:800; margin:1.3rem 0 1.2rem; max-width:980px; }
.pg-h1 .wd{ display:inline-block; overflow:hidden; vertical-align:top; padding:0 .04em .12em; margin:0 -.04em; }
.pg-h1 .wd > span{ display:inline-block; transform:translateY(115%); animation:pgUp 1s cubic-bezier(.2,.8,.2,1) forwards; animation-delay:calc(var(--w) * .09s + .1s); }
.pg-h1 .wd > span.grad{ animation:pgUp 1s cubic-bezier(.2,.8,.2,1) forwards, pgShift 6s ease-in-out infinite alternate; animation-delay:calc(var(--w) * .09s + .1s),0s; }
@keyframes pgUp{ to{ transform:none; } }
.pg-hero .pg-lead{ font-size:1.15rem; max-width:640px; }
.pg-chips{ display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }
.pg-chip{ display:inline-flex; align-items:center; gap:.7rem; padding:.7rem 1.1rem .7rem .75rem; border-radius:99px; font-size:.86rem; font-weight:600; transition:transform .3s; } .pg-chip:hover{ transform:translateY(-4px); }
.pg-chip i{ width:34px; height:34px; border-radius:50%; display:grid; place-items:center; color:#fff; font-size:.85rem; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); }
.pg-chip:nth-child(2) i{ background:linear-gradient(135deg,var(--pg-vi),#4c3bd6); } .pg-chip:nth-child(3) i{ background:linear-gradient(135deg,var(--pg-cy),#2563eb); } .pg-chip:nth-child(4) i{ background:linear-gradient(135deg,#22c55e,var(--pg-cy)); }
.pg-chip b{ font-family:'Bricolage Grotesque',sans-serif; font-size:1.05rem; }
.pg-hero-acts{ display:flex; flex-wrap:wrap; gap:.9rem; margin-top:2rem; }

/* ============ generic cards / grids ============ */
.pg-grid{ display:grid; gap:1.2rem; }
.pg-g2{ grid-template-columns:repeat(2,1fr); } .pg-g3{ grid-template-columns:repeat(3,1fr); } .pg-g4{ grid-template-columns:repeat(4,1fr); }
.pg-card{ position:relative; border-radius:28px; padding:1.9rem; transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s; }
.pg-card:hover{ transform:translateY(-8px); box-shadow:0 30px 60px rgba(120,70,40,.2); }
.pg-ico{ width:56px; height:56px; border-radius:18px; display:grid; place-items:center; font-size:1.3rem; color:#fff; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); box-shadow:0 12px 26px rgba(255,94,58,.3); transition:transform .5s; }
.pg-card:hover .pg-ico{ transform:rotate(-10deg) scale(1.1); }
.pg-ico.v{ background:linear-gradient(135deg,var(--pg-vi),#4c3bd6); box-shadow:0 12px 26px rgba(76,59,214,.3); } .pg-ico.c{ background:linear-gradient(135deg,var(--pg-cy),#2563eb); box-shadow:0 12px 26px rgba(20,120,200,.3); } .pg-ico.g{ background:linear-gradient(135deg,#22c55e,var(--pg-cy)); box-shadow:0 12px 26px rgba(20,184,150,.3); }
.pg-card h3{ font-size:1.35rem; font-weight:800; margin:1.2rem 0 .5rem; } .pg-card p{ margin:0; font-size:.93rem; line-height:1.65; }
.pg-num{ position:absolute; right:1.4rem; top:.6rem; font-family:'Bricolage Grotesque',sans-serif; font-size:3.4rem; font-weight:800; color:transparent; -webkit-text-stroke:1.5px rgba(245,130,31,.4); line-height:1; }
.pg-tags{ display:flex; flex-wrap:wrap; gap:.45rem; margin-top:1.1rem; } .pg-tags span{ font-size:.72rem; font-weight:600; padding:.3rem .75rem; border-radius:99px; background:#fff0e2; color:var(--pg-or); }
.pg-more{ display:inline-flex; align-items:center; gap:.5rem; margin-top:1.2rem; font-weight:600; font-size:.88rem; color:var(--pg-or); } .pg-more i{ transition:transform .3s; } .pg-card:hover .pg-more i{ transform:translateX(5px); }

/* colourful bento tiles */
.pg-bento{ display:grid; grid-template-columns:repeat(2,1fr); gap:1.2rem; }
.pg-tile{ position:relative; border-radius:34px; padding:2.4rem; min-height:260px; color:#fff; overflow:clip; background:linear-gradient(145deg,var(--c1),var(--c2)); box-shadow:0 30px 60px var(--sh); transition:transform .45s cubic-bezier(.2,.7,.2,1); display:flex; flex-direction:column; justify-content:flex-end; }
.pg-tile:hover{ transform:translateY(-8px) rotate(-.4deg); }
.pg-tile::before{ content:''; position:absolute; right:-70px; top:-70px; width:260px; height:260px; border-radius:50%; border:36px solid rgba(255,255,255,.14); animation:pgSpin 22s linear infinite; }
.pg-tile .big{ position:absolute; left:1.8rem; top:1.2rem; font-family:'Bricolage Grotesque',sans-serif; font-size:6.2rem; font-weight:800; line-height:1; color:transparent; -webkit-text-stroke:2px rgba(255,255,255,.28); }
.pg-tile i.ic{ position:absolute; right:2rem; top:2rem; width:62px; height:62px; border-radius:20px; display:grid; place-items:center; font-size:1.5rem; background:rgba(255,255,255,.22); backdrop-filter:blur(8px); transition:transform .5s cubic-bezier(.3,1.5,.5,1); }
.pg-tile:hover i.ic{ transform:rotate(-12deg) scale(1.12); }
.pg-tile h3{ font-size:1.9rem; font-weight:800; color:#fff; margin:0 0 .5rem; position:relative; } .pg-tile p{ color:rgba(255,255,255,.9); margin:0; font-size:.98rem; line-height:1.6; max-width:430px; position:relative; }

/* alternating timeline */
.pg-tl{ position:relative; max-width:940px; margin:0 auto; }
.pg-tl::before{ content:''; position:absolute; left:50%; top:0; bottom:0; width:3px; margin-left:-1.5px; border-radius:3px; background:linear-gradient(180deg,var(--pg-cy),var(--pg-vi),var(--pg-pk),var(--pg-or)); transform-origin:top; transform:scaleY(0); transition:transform 2.4s cubic-bezier(.2,.7,.2,1); }
.pg-tl.on::before{ transform:scaleY(1); }
.pg-tl-s{ position:relative; width:50%; padding:0 3.2rem 2.6rem 0; text-align:right; }
.pg-tl-s:nth-child(even){ margin-left:50%; padding:0 0 2.6rem 3.2rem; text-align:left; }
.pg-tl-c{ display:inline-block; text-align:left; max-width:390px; padding:1.5rem 1.7rem; border-radius:24px; }
.pg-tl-c small{ color:var(--pg-or); font-weight:700; letter-spacing:.16em; font-size:.7rem; } .pg-tl-c h4{ margin:.25rem 0 .45rem; font-size:1.3rem; font-weight:800; } .pg-tl-c p{ margin:0; font-size:.92rem; line-height:1.6; }
.pg-tl-d{ position:absolute; top:12px; right:-27px; width:54px; height:54px; border-radius:50%; display:grid; place-items:center; color:#fff; font-size:1.1rem; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); box-shadow:0 0 0 7px rgba(255,255,255,.7),0 14px 30px rgba(255,94,58,.4); z-index:2; }
.pg-tl-s:nth-child(even) .pg-tl-d{ right:auto; left:-27px; background:linear-gradient(135deg,var(--pg-vi),var(--pg-cy)); box-shadow:0 0 0 7px rgba(255,255,255,.7),0 14px 30px rgba(76,59,214,.4); }
.pg-tl-d::after{ content:''; position:absolute; inset:-7px; border-radius:50%; border:2px solid currentColor; opacity:0; animation:pgRip 3s infinite; } @keyframes pgRip{ 0%{ transform:scale(.9); opacity:.6; } 100%{ transform:scale(1.5); opacity:0; } }

/* expanding panels */
.pg-xp{ display:flex; gap:1rem; height:420px; }
.pg-xp-i{ position:relative; flex:1; border-radius:30px; padding:1.6rem; color:#fff; overflow:clip; cursor:pointer; transition:flex .7s cubic-bezier(.2,.7,.2,1); background:linear-gradient(160deg,var(--c1),var(--c2)); display:flex; flex-direction:column; justify-content:space-between; box-shadow:0 22px 50px var(--sh); }
.pg-xp-i.act{ flex:3.4; }
.pg-xp-i::after{ content:''; position:absolute; right:-60px; top:-60px; width:220px; height:220px; border-radius:50%; background:rgba(255,255,255,.14); animation:pgOrb 10s ease-in-out infinite alternate; }
.pg-xp-i .ico{ width:54px; height:54px; border-radius:17px; display:grid; place-items:center; font-size:1.3rem; background:rgba(255,255,255,.22); position:relative; z-index:1; }
.pg-xp-i .n{ position:absolute; right:1.2rem; top:1rem; font-weight:700; opacity:.7; z-index:1; }
.pg-xp-i .t{ position:relative; z-index:1; } .pg-xp-i h4{ font-size:1.6rem; color:#fff; margin:0 0 .5rem; font-weight:800; white-space:nowrap; }
.pg-xp-i p{ color:rgba(255,255,255,.92); max-width:380px; margin:0; font-size:.95rem; line-height:1.65; opacity:0; max-height:0; transition:opacity .5s .15s,max-height .6s; }
.pg-xp-i.act p{ opacity:1; max-height:160px; }
.pg-xp-i:not(.act) h4{ writing-mode:vertical-rl; transform:rotate(180deg); font-size:1.35rem; }

/* big CTA */
.pg-cta{ position:relative; text-align:center; padding:4.6rem 1.5rem; border-radius:44px; overflow:clip; color:#fff; background:linear-gradient(120deg,#7c5cff,#c04bd6,#ff5e8a,#ff8a1f); background-size:300% 300%; animation:pgGrad 10s ease infinite; box-shadow:0 36px 80px rgba(124,92,255,.4); }
@keyframes pgGrad{ 50%{ background-position:100% 50%; } }
.pg-cta::before,.pg-cta::after{ content:''; position:absolute; border-radius:50%; border:40px solid rgba(255,255,255,.1); animation:pgSpin 20s linear infinite; }
.pg-cta::before{ width:400px; height:400px; left:-130px; top:-150px; } .pg-cta::after{ width:320px; height:320px; right:-100px; bottom:-130px; animation-direction:reverse; }
.pg-cta > *{ position:relative; z-index:1; } .pg-cta h2{ color:#fff; font-size:clamp(1.9rem,4vw,3rem); font-weight:800; margin:0 0 .8rem; } .pg-cta p{ color:rgba(255,255,255,.92); max-width:560px; margin:0 auto 1.6rem; font-size:1.05rem; }
.pg-cta .pg-btn.pri{ background:#fff; color:var(--pg-ink); box-shadow:0 14px 34px rgba(0,0,0,.2); } .pg-cta .pg-btn.pri:hover{ color:var(--pg-or); }

/* article / legal */
.pg-doc{ max-width:860px; margin:0 auto; border-radius:34px; padding:3rem 3.2rem; }
.pg-doc h3{ font-size:1.5rem; font-weight:800; margin:2.4rem 0 .8rem; } .pg-doc h3:first-child{ margin-top:0; }
.pg-doc p,.pg-doc li{ font-size:1rem; line-height:1.8; color:#4a5164; } .pg-doc ul{ padding-left:1.3rem; } .pg-doc li{ margin-bottom:.35rem; } .pg-doc strong{ color:var(--pg-ink); }
.pg-doc a{ color:var(--pg-or); font-weight:600; }
.pg-upd{ display:inline-flex; align-items:center; gap:.5rem; padding:.45rem 1rem; border-radius:99px; font-size:.8rem; margin-top:1.4rem; color:var(--pg-mute); } .pg-upd i{ color:var(--pg-or); }

/* masonry gallery */
.pg-mas{ columns:3 280px; column-gap:1.2rem; }
.pg-mas .it{ position:relative; display:block; width:100%; padding:0; border:0; margin:0 0 1.2rem; border-radius:26px; overflow:hidden; cursor:zoom-in; break-inside:avoid; box-shadow:0 18px 40px rgba(120,70,40,.2); border:3px solid rgba(255,255,255,.95); background:#fff; transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s; }
.pg-mas .it img{ width:100%; display:block; transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.pg-mas .it:hover{ transform:translateY(-8px) rotate(-.5deg); box-shadow:0 30px 60px rgba(255,94,58,.35); } .pg-mas .it:hover img{ transform:scale(1.08); }
.pg-mas .cap{ position:absolute; left:0; right:0; bottom:0; display:flex; justify-content:space-between; align-items:center; padding:1.6rem 1.1rem .9rem; color:#fff; background:linear-gradient(0deg,rgba(27,31,42,.75),transparent); opacity:0; transform:translateY(14px); transition:.4s; font-weight:700; letter-spacing:.06em; font-size:.8rem; text-transform:uppercase; }
.pg-mas .it:hover .cap{ opacity:1; transform:none; }
.pg-lb{ position:fixed; inset:0; z-index:5000; display:grid; place-items:center; background:rgba(20,16,30,.86); backdrop-filter:blur(14px); opacity:0; visibility:hidden; transition:opacity .4s,visibility .4s; }
.pg-lb.open{ opacity:1; visibility:visible; }
.pg-lb img{ max-width:min(92vw,1100px); max-height:82vh; border-radius:22px; box-shadow:0 40px 100px rgba(0,0,0,.6); transform:scale(.92); transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .3s; } .pg-lb.open img{ transform:none; } .pg-lb img.swap{ opacity:0; transform:scale(.96) translateX(20px); }
.pg-lb button{ position:absolute; width:52px; height:52px; border-radius:50%; border:1px solid rgba(255,255,255,.3); background:rgba(255,255,255,.12); color:#fff; font-size:1.1rem; cursor:pointer; transition:.3s; } .pg-lb button:hover{ background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); border-color:transparent; transform:scale(1.1); }
.pg-lb .x{ top:1.4rem; right:1.4rem; } .pg-lb .pv{ left:1.4rem; top:50%; margin-top:-26px; } .pg-lb .nx{ right:1.4rem; top:50%; margin-top:-26px; }
.pg-lb .c{ position:absolute; bottom:1.4rem; left:50%; translate:-50% 0; color:#fff; font-size:.85rem; letter-spacing:.2em; background:rgba(255,255,255,.14); padding:.4rem 1rem; border-radius:99px; }

/* accordion helper (steps list) */
.pg-steps{ position:relative; display:grid; gap:1rem; }
.pg-steps::before{ content:''; position:absolute; left:33px; top:34px; bottom:34px; width:3px; border-radius:3px; background:linear-gradient(180deg,var(--pg-or),var(--pg-pk),var(--pg-vi),var(--pg-cy)); opacity:.5; }
.pg-step{ position:relative; display:grid; grid-template-columns:68px 1fr; gap:1.2rem; align-items:center; padding:1.1rem 1.4rem 1.1rem 1rem; border-radius:24px; transition:transform .4s,box-shadow .4s; }
.pg-step:hover{ transform:translateX(10px); box-shadow:0 22px 46px rgba(255,94,58,.2); }
.pg-step .d{ position:relative; width:68px; height:68px; border-radius:50%; display:grid; place-items:center; font-size:1.3rem; color:#fff; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); box-shadow:0 0 0 7px rgba(255,255,255,.7),0 12px 28px rgba(255,94,58,.4); z-index:1; }
.pg-step:nth-child(2) .d{ background:linear-gradient(135deg,var(--pg-pk),var(--pg-vi)); } .pg-step:nth-child(3) .d{ background:linear-gradient(135deg,var(--pg-vi),var(--pg-cy)); } .pg-step:nth-child(4) .d{ background:linear-gradient(135deg,var(--pg-cy),#22c55e); } .pg-step:nth-child(5) .d{ background:linear-gradient(135deg,#22c55e,var(--pg-or)); }
.pg-step h4{ margin:0 0 .25rem; font-size:1.2rem; font-weight:800; } .pg-step p{ margin:0; font-size:.9rem; line-height:1.55; }
.pg-checks{ list-style:none; padding:0; margin:1.6rem 0 0; display:grid; gap:.8rem; } .pg-checks li{ display:flex; gap:.7rem; align-items:flex-start; font-size:.98rem; color:var(--pg-ink); line-height:1.5; } .pg-checks i{ margin-top:.25rem; color:#fff; width:22px; height:22px; flex:none; border-radius:50%; display:grid; place-items:center; font-size:.65rem; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); }

/* two-col feature split */
.pg-split{ display:grid; grid-template-columns:1.1fr 1fr; gap:3rem; align-items:center; }
.pg-art{ position:relative; display:grid; place-items:center; }
.pg-art::before{ content:''; position:absolute; width:78%; aspect-ratio:1; border-radius:42% 58% 55% 45%; background:linear-gradient(145deg,rgba(255,176,102,.55),rgba(255,94,138,.35),rgba(124,92,255,.3)); filter:blur(2px); animation:pgMorph 12s ease-in-out infinite alternate; }
@keyframes pgMorph{ 50%{ border-radius:58% 42% 40% 60%; transform:rotate(18deg); } 100%{ border-radius:45% 55% 60% 40%; transform:rotate(-12deg); } }
.pg-art img{ position:relative; width:100%; max-width:560px; filter:drop-shadow(0 30px 40px rgba(120,60,20,.25)); animation:pgBob 7s ease-in-out infinite; }
.pg-art .badge{ position:absolute; left:2%; bottom:6%; display:flex; align-items:center; gap:.8rem; padding:.9rem 1.2rem; border-radius:22px; animation:pgBob 6s ease-in-out infinite reverse; }
.pg-art .badge i{ width:44px; height:44px; border-radius:14px; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); }
.pg-art .badge b{ display:block; font-family:'Bricolage Grotesque',sans-serif; font-size:1.6rem; line-height:1; } .pg-art .badge span{ font-size:.74rem; color:var(--pg-mute); }
.pg-hl{ display:grid; grid-template-columns:1fr 1fr; gap:.9rem; margin:1.6rem 0; }
.pg-hl > div{ display:flex; gap:.85rem; align-items:center; padding:1rem 1.1rem; border-radius:20px; transition:transform .35s; } .pg-hl > div:hover{ transform:translateY(-4px); }
.pg-hl i{ width:42px; height:42px; flex:none; border-radius:13px; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); } .pg-hl > div:nth-child(2) i{ background:linear-gradient(135deg,var(--pg-vi),#4c3bd6); }
.pg-hl h5{ margin:0; font-size:.95rem; font-weight:700; } .pg-hl p{ margin:0; font-size:.78rem; line-height:1.4; }

/* lists (careers / blog) */
.pg-post img.cover{ width:100%; height:200px; object-fit:cover; border-radius:20px; margin-bottom:1.1rem; }
.pg-article{ max-width:820px; margin:0 auto; border-radius:34px; padding:2.6rem 3rem; } .pg-article .body{ font-size:1.05rem; line-height:1.85; color:#3f4558; }
.pg-article img.cover{ width:100%; border-radius:24px; margin-bottom:1.8rem; }
.pg-empty{ text-align:center; padding:3rem 1.5rem; border-radius:30px; font-size:1.05rem; color:var(--pg-mute); grid-column:1/-1; }

@media (max-width:991px){
  .pg-g3,.pg-g4{ grid-template-columns:repeat(2,1fr); } .pg-split{ grid-template-columns:1fr; gap:2rem; }
  .pg-xp{ flex-direction:column; height:auto; } .pg-xp-i,.pg-xp-i.act{ flex:none; min-height:150px; } .pg-xp-i p{ opacity:1; max-height:none; } .pg-xp-i:not(.act) h4{ writing-mode:horizontal-tb; transform:none; }
  .pg-tl::before{ left:27px; } .pg-tl-s,.pg-tl-s:nth-child(even){ width:100%; margin-left:0; padding:0 0 2rem 74px; text-align:left; } .pg-tl-d,.pg-tl-s:nth-child(even) .pg-tl-d{ left:0; right:auto; }
  .pg-hero{ padding-top:3.6rem; } .pg-orb.o1{ width:90px; height:90px; right:6%; } .pg-orb.o2{ display:none; }
  .pg-doc,.pg-article{ padding:2rem 1.5rem; }
}
@media (max-width:575px){ .pg-sec{ padding:4.4rem 0; } .pg-g2,.pg-g3,.pg-g4,.pg-bento,.pg-hl{ grid-template-columns:1fr; } .pg-tile{ min-height:230px; padding:1.8rem; } .pg-tile .big{ font-size:4.4rem; } .pg-mas{ columns:2 150px; } }
@media (prefers-reduced-motion:reduce){ .pg *,.pg *::before,.pg *::after{ animation:none!important; transition:none!important; } .pg .rv{ opacity:1; transform:none; filter:none; } .pg-h1 .wd > span{ transform:none!important; } .pg-tl::before{ transform:none; } }

/* ============ product page hero ============ */
.pg-ph{ padding:4.4rem 0 3.6rem; }
.pg-ph-grid{ display:grid; grid-template-columns:1.05fr 1fr; gap:3rem; align-items:center; }
.pg-ph .pg-h1{ font-size:clamp(2.3rem,4.8vw,4.1rem); margin:1.2rem 0 1rem; }
.pg-ph .pg-lead{ font-size:1.08rem; }
.pg-ph-eb{ display:inline-flex; align-items:center; gap:.6rem; margin:1rem 0 0 .6rem; padding:.45rem 1rem; border-radius:99px; font-size:.78rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--pg-or); } .pg-ph-eb i{ color:var(--pg-or); }
.pg-trust{ display:inline-flex; align-items:center; gap:1rem; margin-top:1.8rem; padding:.7rem 1.3rem .7rem .8rem; border-radius:99px; }
.pg-trust .av{ display:flex; } .pg-trust .av span{ width:38px; height:38px; border-radius:50%; display:grid; place-items:center; margin-left:-10px; border:3px solid #fff; font-size:.7rem; font-weight:700; color:#fff; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); } .pg-trust .av span:first-child{ margin-left:0; } .pg-trust .av span:nth-child(2){ background:linear-gradient(135deg,var(--pg-vi),#4c3bd6); } .pg-trust .av span:nth-child(3){ background:linear-gradient(135deg,var(--pg-cy),#2563eb); } .pg-trust .av span:nth-child(4){ background:var(--pg-ink); }
.pg-trust .st{ color:#f5a623; font-size:.78rem; display:flex; align-items:center; gap:2px; } .pg-trust .st b{ color:var(--pg-ink); margin-left:.4rem; font-size:.82rem; } .pg-trust p{ margin:.15rem 0 0; font-size:.78rem; }
.pg-ph-stats{ display:flex; flex-wrap:wrap; gap:2.2rem; margin-top:1.8rem; } .pg-ph-stats b{ display:block; font-family:'Bricolage Grotesque',sans-serif; font-size:2rem; font-weight:800; line-height:1; } .pg-ph-stats span{ font-size:.8rem; color:var(--pg-mute); }
.pg-ph-vis{ position:relative; }
.pg-ph-vis::before{ content:''; position:absolute; inset:4% 0 0 6%; border-radius:42% 58% 55% 45%; background:linear-gradient(145deg,rgba(255,176,102,.6),rgba(255,94,138,.4),rgba(124,92,255,.35)); filter:blur(2px); animation:pgMorph 12s ease-in-out infinite alternate; }
.pg-ph-frame{ position:relative; border-radius:30px; padding:.9rem; background:rgba(255,255,255,.7); border:1px solid rgba(255,255,255,.95); backdrop-filter:blur(14px); box-shadow:0 40px 80px rgba(120,60,20,.28); animation:pgBob 7s ease-in-out infinite; transition:transform .25s ease-out; }
.pg-ph-frame img{ display:block; width:100%; border-radius:20px; }
.pg-ph-badge{ position:absolute; left:-3%; bottom:8%; display:flex; align-items:center; gap:.8rem; padding:.9rem 1.2rem; border-radius:22px; animation:pgBob 6s ease-in-out infinite reverse; }
.pg-ph-badge i{ width:44px; height:44px; border-radius:14px; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,var(--pg-or),var(--pg-pk)); } .pg-ph-badge b{ display:block; font-family:'Bricolage Grotesque',sans-serif; font-size:1.6rem; line-height:1; } .pg-ph-badge span{ font-size:.74rem; color:var(--pg-mute); }
@media (max-width:991px){ .pg-ph-grid{ grid-template-columns:1fr; gap:2rem; } .pg-ph-badge{ left:0; } }

/* about: mission / vision / value / goals — glass tiles in the home-page look.
   Authored light-glass + dark text so the page-wide dark-mode invert renders dark glass + white text. */
.pg-tile{ color:#1b1f2a; background:radial-gradient(80% 70% at 100% 0%,color-mix(in srgb,var(--c1) 26%,transparent),transparent 70%),linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.74)); border:1px solid color-mix(in srgb,var(--c1) 38%,rgba(255,255,255,.5)); box-shadow:0 30px 60px -26px var(--sh); }
.pg-tile::before{ border-color:color-mix(in srgb,var(--c1) 16%,transparent); }
.pg-tile .big{ -webkit-text-stroke:2px rgba(245,130,31,.6); }
.pg-tile i.ic{ color:#fff; background:linear-gradient(135deg,#f7941d,#f26233); box-shadow:0 10px 26px rgba(247,148,29,.4); backdrop-filter:none; }
.pg-tile h3{ color:#1b1f2a; } .pg-tile p{ color:#555d72; }

/* about: "what drives us" — list + spotlight panel. Light glass + dark text so the dark-mode invert renders dark glass + white text. */
.dv{ display:grid; grid-template-columns:5fr 7fr; gap:1.4rem; align-items:stretch; }
.dv-nav{ display:grid; gap:.9rem; }
.dv-b{ position:relative; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1.1rem; width:100%; text-align:left; padding:1.15rem 1.4rem; border-radius:24px; cursor:pointer; color:#1b1f2a; font:inherit; background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(255,255,255,.7)); border:1px solid rgba(27,31,42,.1); transition:border-color .3s,box-shadow .3s,translate 1.7s cubic-bezier(.4,.1,.3,1.25) var(--d,0ms),rotate 1.7s cubic-bezier(.4,.1,.3,1.25) var(--d,0ms),opacity .5s var(--d,0ms); }
.pg .dv-b.rv.fall{ transition:border-color .3s,box-shadow .3s,translate 1.7s cubic-bezier(.4,.1,.3,1.25) var(--d,0ms),rotate 1.7s cubic-bezier(.4,.1,.3,1.25) var(--d,0ms),opacity .5s var(--d,0ms); }
.dv-b .n{ font-family:'Bricolage Grotesque',sans-serif; font-size:1.6rem; font-weight:800; color:transparent; -webkit-text-stroke:1.5px rgba(245,130,31,.7); min-width:2.6rem; }
.dv-b b{ font-family:'Bricolage Grotesque',sans-serif; font-size:1.25rem; font-weight:800; color:#1b1f2a; }
.dv-b .go{ width:34px; height:34px; border-radius:50%; display:grid; place-items:center; color:#f7941d; background:rgba(245,130,31,.12); transition:.35s; }
.dv-b:hover{ border-color:rgba(245,130,31,.6); }
.dv-b.act{ border-color:#f7941d; box-shadow:0 18px 40px -18px rgba(247,148,29,.55); }
.dv-b.act .go{ background:linear-gradient(135deg,#f7941d,#f26233); color:#fff; transform:translateX(4px); }
.dv-view{ position:relative; min-height:380px; }
.dv-p{ position:absolute; inset:0; padding:2.4rem; border-radius:34px; overflow:clip; display:flex; flex-direction:column; justify-content:flex-end; color:#1b1f2a; background:radial-gradient(90% 70% at 100% 0%,color-mix(in srgb,var(--c1) 30%,transparent),transparent 70%),linear-gradient(160deg,rgba(255,255,255,.93),rgba(255,255,255,.76)); border:1px solid color-mix(in srgb,var(--c1) 38%,rgba(255,255,255,.5)); box-shadow:0 30px 60px -28px var(--sh); opacity:0; visibility:hidden; translate:40px 0; transition:opacity .5s,translate .6s cubic-bezier(.2,.7,.2,1),visibility 0s .5s; }
.dv-p.act{ opacity:1; visibility:visible; translate:0 0; transition:opacity .5s,translate .6s cubic-bezier(.2,.7,.2,1); }
.dv-p::before{ content:''; position:absolute; right:-80px; top:-80px; width:300px; height:300px; border-radius:50%; border:42px solid color-mix(in srgb,var(--c1) 16%,transparent); animation:pgSpin 22s linear infinite; }
.dv-p .big{ position:absolute; left:2rem; top:1.2rem; font-family:'Bricolage Grotesque',sans-serif; font-size:7rem; font-weight:800; line-height:1; color:transparent; -webkit-text-stroke:2px rgba(245,130,31,.55); }
.dv-p .ic{ position:absolute; right:2.2rem; top:2.2rem; width:78px; height:78px; border-radius:24px; display:grid; place-items:center; font-size:1.9rem; color:#fff; background:linear-gradient(135deg,#f7941d,#f26233); box-shadow:0 14px 32px rgba(247,148,29,.45); }
.dv-p h3{ position:relative; font-size:2.2rem; font-weight:800; color:#1b1f2a; margin:0 0 .6rem; }
.dv-p p{ position:relative; margin:0; color:#555d72; font-size:1.05rem; line-height:1.7; max-width:480px; }
@media (max-width:860px){ .dv{ grid-template-columns:1fr; } .dv-view{ min-height:340px; } .dv-p{ padding:1.6rem; } .dv-p .big{ font-size:4.6rem; } .dv-p h3{ font-size:1.7rem; } }
/* gallery: bento grid with glass frames, orange glow edge on hover, outlined project numbers.
   Authored light-frame + dark-caption values, with dark-mode counterparts, because dark mode is a page-wide invert. */
@property --pga{ syntax:'<angle>'; initial-value:0deg; inherits:false; }
@keyframes pgaSpin{ to{ --pga:360deg; } }
.pg-bn{ display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:230px; grid-auto-flow:dense; gap:1rem; }
.pg-bn .it{ position:relative; display:block; width:100%; height:100%; padding:0; margin:0; border:1px solid rgba(27,31,42,.14); border-radius:28px; overflow:hidden; cursor:zoom-in; background:rgba(255,255,255,.6); box-shadow:0 24px 50px -28px rgba(120,70,40,.45); transition:box-shadow .5s,translate .5s cubic-bezier(.2,.7,.2,1); }
.pg-bn .it.big{ grid-column:span 2; grid-row:span 2; } .pg-bn .it.tall{ grid-row:span 2; } .pg-bn .it.wide{ grid-column:span 2; }
.pg-bn .it img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform 1s cubic-bezier(.2,.7,.2,1); }
.pg-bn .it::after{ content:''; position:absolute; inset:0; border-radius:inherit; padding:2px; pointer-events:none; z-index:3; background:conic-gradient(from var(--pga),transparent 0 60%,#f7941d 80%,#fff 90%,transparent 100%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0); opacity:0; transition:opacity .5s; animation:pgaSpin 4s linear infinite; }
.pg-bn .it:hover{ translate:0 -6px; box-shadow:0 34px 70px -24px rgba(247,148,29,.55); } .pg-bn .it:hover img{ transform:scale(1.07); } .pg-bn .it:hover::after{ opacity:1; }
.pg-bn .num{ position:absolute; left:1.1rem; top:.8rem; z-index:2; font-family:'Bricolage Grotesque',sans-serif; font-size:2.4rem; font-weight:800; line-height:1; color:transparent; -webkit-text-stroke:1.5px rgba(255,255,255,.85); text-shadow:0 2px 14px rgba(0,0,0,.35); }
.pg-bn .cap{ position:absolute; left:0; right:0; bottom:0; z-index:2; display:flex; justify-content:space-between; align-items:center; padding:2rem 1.2rem 1rem; color:#fff; background:linear-gradient(0deg,rgba(8,9,14,.85),transparent); opacity:0; transform:translateY(14px); transition:.4s; font-weight:700; letter-spacing:.06em; font-size:.8rem; text-transform:uppercase; }
.pg-bn .cap i{ width:36px; height:36px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(135deg,#f7941d,#f26233); color:#fff; letter-spacing:0; }
.pg-bn .it:hover .cap{ opacity:1; transform:none; }
html.dark-mode .pg-bn .it{ border-color:rgba(0,0,0,.14); background:rgba(255,255,255,.7); box-shadow:none; }
html.dark-mode .pg-bn .num{ -webkit-text-stroke-color:rgba(0,0,0,.85); text-shadow:0 2px 14px rgba(255,255,255,.35); }
html.dark-mode .pg-bn .cap{ color:#000; background:linear-gradient(0deg,rgba(247,247,241,.88),transparent); }
@media (max-width:900px){ .pg-bn{ grid-template-columns:repeat(2,1fr); grid-auto-rows:190px; } .pg-bn .it.tall{ grid-row:span 1; } }
@media (max-width:480px){ .pg-bn{ grid-auto-rows:150px; gap:.7rem; } .pg-bn .num{ font-size:1.7rem; } }

/* closing banner in the site theme: tinted glass card with orange accents.
   Authored light glass + dark text so the dark-mode invert renders dark glass + light text. */
.pg-cta{ color:#1b1f2a; background:radial-gradient(70% 90% at 0% 0%,rgba(247,148,29,.3),transparent 70%),radial-gradient(70% 90% at 100% 100%,rgba(124,92,255,.26),transparent 70%),linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,255,255,.88)); background-size:auto; animation:none; border:1px solid rgba(247,148,29,.4); box-shadow:0 36px 80px -34px rgba(247,148,29,.5); }
.pg-cta::before,.pg-cta::after{ border-color:rgba(247,148,29,.16); }
.pg-cta h2{ color:#1b1f2a; } .pg-cta h2 span{ text-decoration-color:#f7941d !important; }
.pg-cta p{ color:#555d72; }
.pg-cta .pg-btn.pri{ background:linear-gradient(135deg,#f7941d,#f26233); color:#fff; box-shadow:0 14px 34px -10px rgba(247,148,29,.7); } .pg-cta .pg-btn.pri:hover{ color:#fff; filter:brightness(1.08); }

/* product banners are text-only now: single column, text stays at a comfortable width */
.pg-ph-grid{ grid-template-columns:1fr; }
.pg-ph-grid > div{ max-width:820px; }

/* banners: dashed rings removed; two layers of softly twinkling sparkle dots instead */
.pg-hero .pg-ring{ display:none; }
html.dark-mode .pg-hero{ --sp-core:#06060b; }
.pg-hero .pg-bgfx::before, .pg-hero .pg-bgfx::after{ content:''; position:absolute; inset:0; pointer-events:none; background-repeat:no-repeat; }
.pg-hero .pg-bgfx::before{
  background-image:radial-gradient(circle,var(--sp-core,#fff) 0 1.5px,rgba(255,176,102,.9) 2.5px,transparent 6px),radial-gradient(circle,var(--sp-core,#fff) 0 1px,rgba(255,94,138,.9) 2px,transparent 5px),radial-gradient(circle,var(--sp-core,#fff) 0 2px,rgba(255,176,102,.9) 3px,transparent 8px),radial-gradient(circle,var(--sp-core,#fff) 0 1px,rgba(169,155,255,.9) 2px,transparent 5px),radial-gradient(circle,var(--sp-core,#fff) 0 1.5px,rgba(255,94,138,.9) 2.5px,transparent 6px);
  background-size:26px 26px,20px 20px,36px 36px,20px 20px,26px 26px; background-position:62% 18%,76% 34%,88% 20%,70% 62%,92% 70%; animation:pgTwinkle 3.6s ease-in-out infinite; }
.pg-hero .pg-bgfx::after{
  background-image:radial-gradient(circle,var(--sp-core,#fff) 0 1px,rgba(169,155,255,.9) 2px,transparent 5px),radial-gradient(circle,var(--sp-core,#fff) 0 2px,rgba(255,94,138,.9) 3px,transparent 8px),radial-gradient(circle,var(--sp-core,#fff) 0 1px,rgba(255,176,102,.9) 2px,transparent 5px),radial-gradient(circle,var(--sp-core,#fff) 0 1.5px,rgba(169,155,255,.9) 2.5px,transparent 6px),radial-gradient(circle,var(--sp-core,#fff) 0 1px,rgba(255,176,102,.9) 2px,transparent 5px);
  background-size:20px 20px,36px 36px,20px 20px,26px 26px,20px 20px; background-position:55% 40%,82% 48%,96% 38%,66% 82%,80% 12%; animation:pgTwinkle 4.6s ease-in-out -1.8s infinite; }
@keyframes pgTwinkle{ 0%,100%{ opacity:.4; transform:scale(.9); } 50%{ opacity:1; transform:scale(1.25); } }
@media (prefers-reduced-motion:reduce){ .pg-hero .pg-bgfx::before,.pg-hero .pg-bgfx::after{ animation:none; opacity:.7; } }
/* expanding "why choose us / values" panels in the site theme: tinted glass, orange accents.
   Authored light glass + dark text so the dark-mode invert renders dark glass + light text. */
.pg-xp-i{ color:#1b1f2a; background:radial-gradient(90% 70% at 100% 0%,color-mix(in srgb,var(--c1) 34%,transparent),transparent 70%),linear-gradient(160deg,color-mix(in srgb,var(--c1) 22%,#fff),color-mix(in srgb,var(--c2) 30%,#fff)); border:1px solid color-mix(in srgb,var(--c1) 45%,rgba(255,255,255,.5)); box-shadow:0 26px 56px -30px var(--sh); }
.pg-xp-i::after{ background:color-mix(in srgb,var(--c1) 14%,transparent); }
.pg-xp-i .ico{ color:#fff; background:linear-gradient(135deg,#f7941d,#f26233); box-shadow:0 10px 26px -6px rgba(247,148,29,.6); backdrop-filter:none; }
.pg-xp-i .n{ color:transparent; -webkit-text-stroke:1.5px rgba(245,130,31,.75); opacity:1; }
.pg-xp-i h4{ color:#1b1f2a; }
.pg-xp-i p{ color:#555d72; }
.pg-xp-i:not(.act):hover{ border-color:#f7941d; }

/* Services "How we work": two columns on desktop with a sticky left side; single column on tablet/phone (was forced to 2 columns by an inline style) */
.pg-split-proc{ grid-template-columns:.9fr 1.1fr; align-items:start; }
.pg-proc-side{ position:sticky; top:110px; }
@media (max-width:991px){ .pg-split-proc{ grid-template-columns:1fr; gap:2rem; } .pg-proc-side{ position:static; } .pg-split-proc .pg-steps{ min-width:0; } }

/* ===== Legal pages (Privacy / Terms): contents list + summary + document ===== */
.pg-legal{ display:grid; grid-template-columns:270px minmax(0,1fr); gap:2rem; align-items:start; max-width:1140px; margin:0 auto; }
.pg-legal .pg-doc{ max-width:none; margin:0; }
.pg-toc{ position:sticky; top:104px; padding:1.2rem; border-radius:26px; background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.74)); border:1px solid rgba(27,31,42,.1); box-shadow:0 22px 50px -28px rgba(120,70,40,.5); }
.pg-toc-t{ font-size:.72rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:#f5821f; margin:.1rem .4rem .7rem; }
.pg-toc-l{ display:grid; gap:.25rem; }
.pg-toc a{ display:flex; align-items:center; gap:.7rem; padding:.55rem .7rem; border-radius:14px; font-size:.88rem; font-weight:600; line-height:1.3; color:#1b1f2a; text-decoration:none; border:1px solid transparent; transition:background .25s,border-color .25s,translate .25s; }
.pg-toc a b{ flex:none; min-width:1.7rem; font-size:.78rem; color:transparent; -webkit-text-stroke:1px #f5821f; }
.pg-toc a:hover{ background:rgba(245,130,31,.1); translate:3px 0; }
.pg-toc a.act{ background:rgba(245,130,31,.14); border-color:rgba(245,130,31,.55); } .pg-toc a.act b{ color:#f5821f; -webkit-text-stroke:0; }
.pg-sum{ margin-bottom:1.4rem; padding:1.6rem 1.8rem; border-radius:30px; background:radial-gradient(80% 90% at 100% 0%,rgba(245,130,31,.2),transparent 70%),linear-gradient(145deg,rgba(255,255,255,.95),rgba(255,255,255,.8)); border:1px solid rgba(245,130,31,.4); box-shadow:0 30px 60px -32px rgba(120,70,40,.5); }
.pg-sum h2{ font-size:1.15rem; font-weight:800; margin:0 0 1rem; color:#1b1f2a; display:flex; align-items:center; gap:.6rem; } .pg-sum h2 i{ color:#f5821f; }
.pg-sum ul{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
.pg-sum li{ display:flex; align-items:flex-start; gap:.7rem; font-size:.92rem; line-height:1.5; color:#1b1f2a; }
.pg-sum li i{ flex:none; width:34px; height:34px; border-radius:50%; display:grid; place-items:center; font-size:.8rem; color:#fff; background:linear-gradient(135deg,#ff8a1f,#ff5e8a); }
html.dark-mode .pg-sum li i{ color:#000; }
@media (max-width:991px){
  .pg-legal{ grid-template-columns:minmax(0,1fr); gap:1.2rem; } .pg-toc, .pg-legal-main{ min-width:0; max-width:100%; }
  .pg-toc{ position:sticky; top:72px; z-index:5; padding:.5rem; border-radius:20px; }
  .pg-toc-t{ display:none; }
  .pg-toc-l{ display:flex; gap:.4rem; overflow-x:auto; scrollbar-width:none; } .pg-toc-l::-webkit-scrollbar{ display:none; }
  .pg-toc a{ flex:none; white-space:nowrap; padding:.45rem .8rem; border-radius:99px; border:1px solid rgba(27,31,42,.12); } .pg-toc a:hover{ translate:none; }
  .pg-sum ul{ grid-template-columns:1fr; }
}
.dv-p .ic-img{ position:absolute; right:1.6rem; bottom:1.2rem; width:min(44%,310px); height:auto; max-height:88%; object-fit:contain; pointer-events:none; }
.dv-p h3, .dv-p p{ max-width:50%; }
@media (max-width:860px){ .dv-p h3, .dv-p p{ max-width:none; } .dv-p .ic-img{ top:.9rem; bottom:auto; right:.9rem; width:min(46%,190px); max-height:150px; } }
