.banner-landing{--banner-dock-h:4.25rem}.banner-hero{position:relative;min-height:100svh;min-height:100dvh;overflow:hidden;background:var(--indigo-deep)}.banner-hero-media{position:absolute;inset:0;z-index:0}.banner-hero-media img,.banner-hero-media video{width:100%;height:100%;object-fit:cover}.banner-hero-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;min-height:100svh;min-height:100dvh;padding:max(6.5rem,env(safe-area-inset-top)) 1.25rem calc(var(--banner-dock-h) + 2.75rem + env(safe-area-inset-bottom)) 1.25rem}@media (min-width:768px){.banner-hero-content{padding-inline:2.5rem;padding-bottom:calc(var(--banner-dock-h) + 3.5rem + env(safe-area-inset-bottom))}}.banner-crest{width:3.25rem;height:auto;margin-bottom:1.25rem;filter:drop-shadow(0 4px 18px rgba(0,0,0,.45))}@media (min-width:768px){.banner-crest{width:3.75rem}}.banner-hero-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.75rem}.banner-action-pill{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.75rem;padding:.55rem 1.15rem;border-radius:var(--radius-pill);background:rgba(245,244,241,.16);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(14px) saturate(1.1);-webkit-backdrop-filter:blur(14px) saturate(1.1);color:var(--plaster-lift);font-size:.875rem;font-weight:500;letter-spacing:.01em;text-decoration:none;box-shadow:0 8px 28px rgba(23,26,30,.18);transition:background .3s ease,border-color .3s ease,transform .3s ease}.banner-action-pill:hover{background:rgba(245,244,241,.28);border-color:rgba(255,255,255,.42);transform:translateY(-1px)}.banner-action-pill--primary{background:var(--firoozeh);border-color:var(--firoozeh-deep);color:var(--text-on-cta);box-shadow:0 10px 28px rgba(20,87,81,.32)}.banner-action-pill--primary:hover{background:var(--firoozeh-deep);border-color:var(--firoozeh-deep);color:var(--text-on-cta)}.banner-dock{position:fixed;z-index:40;inset-inline:0;bottom:0;display:flex;justify-content:center;pointer-events:none;padding:0 .75rem calc(.65rem + env(safe-area-inset-bottom) + var(--sph-cookie-h, 0px))}.banner-dock-inner{pointer-events:auto;display:flex;align-items:center;gap:.2rem;max-width:100%;padding:.4rem .45rem;border-radius:var(--radius-pill);background:rgba(28,39,52,.78);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(20px) saturate(1.15);-webkit-backdrop-filter:blur(20px) saturate(1.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 14px 40px rgba(23,26,30,.35);animation:banner-float-gentle 4.8s ease-in-out infinite}@media (min-width:640px){.banner-dock-inner{gap:.35rem;padding:.45rem .55rem}}.banner-dock-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-width:3.35rem;min-height:3.15rem;padding:.35rem .4rem;border-radius:calc(var(--radius-pill) - 2px);color:rgba(245,244,241,.88);text-decoration:none;font-size:.65rem;font-weight:500;line-height:1.15;transition:background .25s ease,color .25s ease}@media (min-width:640px){.banner-dock-link{min-width:4.25rem;flex-direction:row;gap:.4rem;font-size:.8rem;padding:.55rem .85rem}}.banner-dock-link:focus-visible,.banner-dock-link:hover{background:rgba(245,244,241,.12);color:var(--plaster-lift)}.banner-dock-link--accent{background:rgba(31,111,105,.55);color:var(--text-on-cta)}.banner-dock-link--accent:focus-visible,.banner-dock-link--accent:hover{background:rgba(31,111,105,.78);color:var(--text-on-cta)}.banner-dock-icon{width:1.15rem;height:1.15rem;flex-shrink:0}.banner-dock-label{max-width:4.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}@media (min-width:640px){.banner-dock-label{max-width:none}}@keyframes banner-float-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.banner-dock-inner{animation:none}.banner-action-pill:hover{transform:none}}.banner-service-card{position:relative;display:block;overflow:hidden;border-radius:var(--radius-panel);text-decoration:none;color:inherit;isolation:isolate;min-height:16.5rem;box-shadow:var(--morph-shadow);transition:transform .35s ease}.banner-service-card:hover{transform:translateY(-3px)}@media (prefers-reduced-motion:reduce){.banner-service-card:hover{transform:none}}.banner-service-card-media{position:absolute;inset:0;z-index:0}.banner-service-card-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(23,26,30,.15),rgba(23,26,30,.35) 45%,rgba(28,39,52,.92));pointer-events:none}.banner-service-card-body{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-height:16.5rem;padding:1.35rem 1.25rem 1.4rem;color:var(--plaster-lift)}.banner-gallery-strip{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}@media (min-width:768px){.banner-gallery-strip{grid-template-columns:repeat(4,1fr);gap:.85rem}}.banner-gallery-cell{position:relative;overflow:hidden;border-radius:var(--radius-soft);aspect-ratio:3/4;background:var(--plaster-dim)}@media (min-width:768px){.banner-gallery-cell{aspect-ratio:4/5}}.banner-gallery-cell img{object-fit:cover}.banner-page-pad{padding-bottom:calc(var(--banner-dock-h) + 2.5rem + env(safe-area-inset-bottom))}body:has(.banner-landing) .wa-fab{bottom:calc(5.75rem + var(--sph-cookie-h, 0px))}@media (min-width:768px){body:has(.banner-landing) .wa-fab{bottom:calc(6.25rem + var(--sph-cookie-h, 0px))}}