.sg{background:var(--obsidian);--sg-card:radial-gradient(120% 60% at 50% 0%,#e7c87c3d,#c6a15b12 45%,transparent 75%),linear-gradient(180deg,#16130d,#0a0a0b 75%);--sg-shadow:0 32px 64px -24px #000000e6,0 24px 90px -30px #c6a15b52;--sg-shadow-h:0 40px 80px -24px #000000f2,0 28px 120px -24px #e7c87c80;--sg-ink:#f4f0e6;--sg-sub:#b7b0a0;--sg-k:#948e82;--sg-link:#e9e3d4;--sg-hi:#e7c87c;--sg-line:#c6a15b24;--sg-grain:.07;position:relative;overflow:hidden}[data-theme=light] .sg{--sg-card:radial-gradient(120% 60% at 50% 0%,#e7c87c4d,#c6a15b14 45%,transparent 75%),linear-gradient(180deg,#fffdf8,#f7efdd 75%);--sg-shadow:0 30px 60px -28px #5a461e4d,0 24px 90px -30px #c6a15b4d;--sg-shadow-h:0 38px 76px -28px #5a461e5c,0 28px 110px -24px #c6a15b73;--sg-ink:#14130e;--sg-sub:#55503f;--sg-k:#7d7562;--sg-link:#2a2618;--sg-hi:#8a6b2e;--sg-line:#8a6b2e33;--sg-grain:.035}.page-section.sg{border-top:0;margin-top:-1px}.sg:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(180deg, var(--obsidian) 0%, color-mix(in srgb, var(--obsidian) 70%, transparent) 40%, transparent 100%);height:clamp(160px,18vw,260px);position:absolute;top:0;left:0;right:0}.sg-aura{pointer-events:none;filter:blur(20px);background:radial-gradient(circle,#e7c87c47,#c6a15b14 45%,#0000 70%);border-radius:50%;width:720px;height:720px;animation:18s ease-in-out infinite sgDrift;position:absolute;top:-200px;right:-120px}@keyframes sgDrift{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-80px,40px)scale(1.15)}}.sg-grain{pointer-events:none;opacity:var(--sg-grain);mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.sg-in{z-index:2;position:relative}.sg-intro{margin-bottom:44px}.sg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.sg-card{background:var(--sg-card);box-shadow:var(--sg-shadow);border-radius:8px;flex-direction:column;gap:24px;padding:clamp(24px,2.6vw,36px);transition:transform .3s ease-out,box-shadow .3s ease-out;display:flex}.sg-card:hover{box-shadow:var(--sg-shadow-h);transform:scale(1.025)}.sg-k{letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.sg-body{flex-direction:column;gap:8px;display:flex}.sg-body h3{margin:0}.sg-title{font-size:var(--step-1);letter-spacing:-.01em;color:var(--sg-ink);transition:color var(--dur) var(--ease);justify-content:space-between;gap:20px;font-weight:600;line-height:1.2;text-decoration:none;display:flex}.sg-title i{color:var(--gold);transition:transform var(--dur) var(--ease);font-style:normal}.sg-title:hover{color:var(--sg-hi)}.sg-title:hover i{transform:translate(4px)}.sg-body p{color:var(--sg-sub);text-wrap:pretty;margin:0;font-size:14.5px;line-height:1.6}.sg-links{margin:0;padding:0;list-style:none}.sg-art{border:1px solid var(--sg-line);min-height:0;transition:border-color .3s var(--ease);background:radial-gradient(60% 75% at 50% 70%, color-mix(in srgb, var(--gold) 12%, transparent), transparent 72%), color-mix(in srgb, var(--obsidian) 40%, transparent);border-radius:8px;flex:1 1 0;justify-content:center;align-items:center;margin:0;display:flex;position:relative;overflow:hidden}.sg-art:before{content:"";aspect-ratio:1;pointer-events:none;background:radial-gradient(circle, color-mix(in srgb, var(--gold-bright) 22%, transparent), transparent 68%);filter:blur(14px);border-radius:50%;width:55%;animation:9s ease-in-out infinite alternate sgGlow;position:absolute;bottom:-30%;left:-10%}@keyframes sgGlow{to{transform:translate(150%,-40%)scale(1.2)}}.sg-card:hover .sg-art{border-color:var(--gold-deep)}.sg-art .line-art{aspect-ratio:320/140;width:min(88%,360px);height:auto;max-height:88%;position:relative}.sg-links a{border-top:1px solid var(--sg-line);color:var(--sg-link);transition:color var(--dur) var(--ease), padding var(--dur) var(--ease);justify-content:space-between;align-items:center;gap:16px;padding:12px 0;font-size:14.5px;font-weight:500;line-height:1.3;text-decoration:none;display:flex}.sg-links a i{color:var(--gold);transition:transform var(--dur) var(--ease);font-style:normal}.sg-links a:hover{color:var(--sg-hi);padding-left:6px}.sg-links a:hover i{transform:translate(3px)}.sg-title:focus-visible,.sg-links a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media (max-width:900px){.sg-grid{grid-template-columns:1fr}.sg-art{display:none}.page-section.sg{border-top:0;margin-top:-1px}.sg:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(180deg, var(--obsidian) 0%, color-mix(in srgb, var(--obsidian) 70%, transparent) 40%, transparent 100%);height:clamp(160px,18vw,260px);position:absolute;top:0;left:0;right:0}.sg-aura{width:480px;height:480px;right:-200px}}@media (prefers-reduced-motion:reduce){.page-section.sg{border-top:0;margin-top:-1px}.sg:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(180deg, var(--obsidian) 0%, color-mix(in srgb, var(--obsidian) 70%, transparent) 40%, transparent 100%);height:clamp(160px,18vw,260px);position:absolute;top:0;left:0;right:0}.sg-aura,.sg-art:before{animation:none}.sg-card{transition:none}.sg-card:hover{transform:none}}.page-hero.photo-right .page-hero-photo.services{-webkit-mask-composite:source-in, source-in;-webkit-mask-image:linear-gradient(270deg,#000 42%,#0000 94%),radial-gradient(145% 88% at 58% 2%,#000 56%,#0000 100%),linear-gradient(0deg,#0000 0,#000 8%);mask-image:linear-gradient(270deg,#000 42%,#0000 94%),radial-gradient(145% 88% at 58% 2%,#000 56%,#0000 100%),linear-gradient(0deg,#0000 0,#000 8%);-webkit-mask-composite:source-in;mask-composite:intersect}[data-theme=light] .page-hero.photo-right .page-hero-photo.services{-webkit-mask-image:linear-gradient(270deg,#000 28%,#0000 97%),radial-gradient(145% 88% at 58% 2%,#000 56%,#0000 100%),linear-gradient(0deg,#0000 0,#000 8%);mask-image:linear-gradient(270deg,#000 28%,#0000 97%),radial-gradient(145% 88% at 58% 2%,#000 56%,#0000 100%),linear-gradient(0deg,#0000 0,#000 8%)}.page-hero:has(.page-hero-photo.services):before{-webkit-mask-image:linear-gradient(#000 45%,#0000 100%);mask-image:linear-gradient(#000 45%,#0000 100%)}
