.photo-carousel{gap:.75rem;display:grid}.photo-carousel-stage{aspect-ratio:4/3;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#141414;position:relative;overflow:hidden}.photo-carousel-slide{opacity:0;transition:opacity .55s var(--ease), transform .7s var(--ease);position:absolute;inset:0;transform:scale(1.03)}.photo-carousel-slide.is-active{opacity:1;z-index:1;transform:scale(1)}.photo-carousel-nav{z-index:2;width:38px;height:38px;color:var(--ink);cursor:pointer;transition:background .25s var(--ease), color .25s var(--ease);background:#ffffffeb;border:0;border-radius:999px;font-size:1.45rem;line-height:1;position:absolute;top:50%;translate:0 -50%;box-shadow:0 10px 24px #0000002e}.photo-carousel-nav:hover{color:var(--accent);background:#fff}.photo-carousel-nav.prev{left:.75rem}.photo-carousel-nav.next{right:.75rem}.photo-carousel-counter{z-index:2;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000008c;border-radius:999px;padding:.35rem .6rem;font-size:.75rem;font-weight:700;position:absolute;bottom:.75rem;right:.75rem}.photo-carousel-thumbs{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:.45rem;display:grid}.photo-carousel-thumb{aspect-ratio:1;cursor:pointer;opacity:.72;transition:opacity .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);background:#ddd;border:2px solid #0000;border-radius:12px;padding:0;position:relative;overflow:hidden}.photo-carousel-thumb.is-active{opacity:1;border-color:var(--accent);transform:translateY(-2px)}.photo-carousel-thumb:hover{opacity:1}@media (prefers-reduced-motion:reduce){.photo-carousel-slide,.photo-carousel-thumb{transition:none}}
.page-hero.has-image{background:#0a0a0a}.page-hero-bg{opacity:1;background-color:#0a0a0a;background-image:radial-gradient(720px 340px at 85% 18%,#e3061352,#0000 60%),linear-gradient(135deg,#121212,#1a0a0c 55%,#0a0a0a);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0;overflow:hidden}.page-hero-bg img{object-fit:cover;opacity:0;transition:opacity .55s var(--ease)}.page-hero-bg.has-photo img{opacity:1}.page-hero-bg.has-photo{opacity:1;filter:none}.page-hero-bg.has-photo:after{content:"";pointer-events:none;background:#0000006b;position:absolute;inset:0}.page-hero-veil{background:linear-gradient(105deg,#000000e0 0%,#00000085 48%,#00000047 100%),radial-gradient(720px 340px at 85% 18%,#e3061347,#0000 60%);position:absolute;inset:0}.page-hero-inner{z-index:1;max-width:var(--container);text-align:left;justify-items:start;gap:1.15rem;display:grid;position:relative}.page-hero-inner>:is(h1,p,.eyebrow,.breadcrumbs,.page-hero-actions){max-width:42rem}.page-hero-actions{flex-wrap:wrap;gap:.75rem;margin-top:.55rem;display:flex}.page-hero h1{letter-spacing:-.035em;color:#fff;max-width:16ch;margin:0;line-height:1.15}.prose{line-height:1.7}.prose h2{letter-spacing:-.03em;margin-top:1.6em}.prose h3{margin-top:1.25em}.prose p+p{margin-top:.85em}.service-cards .service-card{min-height:160px;padding-bottom:2.5rem;position:relative}.service-card-arrow{color:var(--accent);transition:transform .25s var(--ease);font-weight:700;position:absolute;bottom:1.1rem;right:1.15rem}.service-card:hover .service-card-arrow{transform:translate(4px)}.doc-main{gap:1.5rem;display:grid}.doc-cta-inline{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.doc-aside{top:calc(var(--site-header-offset) + 16px);align-content:start;gap:1rem;display:grid;position:sticky}.doc-aside-card{background:var(--dark);color:#fff;border-radius:var(--radius-lg);gap:.75rem;padding:1.35rem;display:grid}.doc-aside-card h3{color:#fff;font-size:1.25rem}.doc-aside-card p{color:#ffffffa6;font-size:.95rem}.doc-aside-phone{color:#fff;opacity:.9;font-weight:700;display:inline-flex}.doc-aside-phone:hover{opacity:1}.doc-aside-soft{border-radius:var(--radius-lg);background:var(--bg-elevated);border:1px solid var(--line);transition:border-color .3s var(--ease), box-shadow .3s var(--ease);gap:.55rem;padding:1.2rem;display:grid}.doc-aside-soft:hover{border-color:#e3061333;box-shadow:0 12px 28px #0000000f}.doc-aside-soft h3{margin-bottom:.2rem;font-size:1.05rem}.doc-aside-soft a{color:var(--ink-muted);font-weight:600}.doc-aside-soft a:hover{color:var(--accent)}.doc-highlights{grid-template-columns:repeat(3,1fr);gap:.85rem;margin-top:.5rem;display:grid}.doc-highlights .adv-card{padding:1rem 1.1rem}.doc-highlights h3{font-size:1.05rem}@media (max-width:900px){.doc-aside{position:static}.doc-highlights{grid-template-columns:1fr}}
