
/* Brand revision: dark charcoal surfaces with Holy City blue as the primary accent. */
:root{--ink:#10171e;--navy:#17242d;--canvas:#10151b;--surface:#1a222b;--muted:#b6c2cb;--line:#34414d;--accent:#00abb3;--bright-accent:#51dbe1;--on-accent:#081b20}
body{background:var(--canvas);color:#eaeaea}
.topbar{background:#090e13;color:#c8d2d9;border-color:#253039}.topbar .faith{color:#aebdc7}
.site-header{background:rgba(14,20,27,.97);border-bottom:1px solid #00abb350}.nav{min-height:100px}
.brand{flex-direction:row;align-items:center;gap:12px}.brand-logo{width:72px;height:72px;display:block;flex-shrink:0}.brand-logo img{width:100%;height:100%;object-fit:cover}.brand-wordmark{display:flex;flex-direction:column}.brand-name{color:#eaeaea}.brand-sub{color:var(--bright-accent)}.footer .brand-logo{width:84px;height:84px}
.nav-links a:hover,.nav-links [aria-current=page]{color:var(--bright-accent)}.nav-phone{color:#d9e4ea}.menu-toggle{color:#eaeaea;border-color:#40505f}.mobile-nav{background:#121c25;max-height:calc(100dvh - 122px)}.mobile-nav a:hover{color:var(--bright-accent)}
.nav-dropdown-panel{background:#18242e;border-color:#3b5261}.nav-dropdown-panel a:hover,.nav-dropdown-panel a:focus-visible{background:#00abb325;color:#6fe6e9}
.btn.dark,.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 5px 22px #00abb313}.btn.dark:hover,.btn.primary:hover{background:#32c7ce;border-color:#32c7ce;box-shadow:0 7px 26px #00abb330}.btn.light-outline{background:transparent;color:#eaeaea;border-color:#4e6574}.btn.light-outline:hover,.btn.outline:hover{background:#00abb31c;border-color:var(--accent)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline-color:var(--bright-accent)}.text-link,.package-full-link,.rich a,.contact-card a:not(.btn){color:var(--bright-accent)}.eyebrow{color:var(--bright-accent)}
.hero{background:#0b1016}.hero-visual{inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:none}.hero:after{background:linear-gradient(90deg,#0b1016f5 0%,#0b1016dd 27%,#0b101675 48%,#0b101610 73%),linear-gradient(0deg,#0b101660,transparent 35%)}.hero h1 em{color:var(--accent)}.hero .eyebrow.accent{color:var(--bright-accent)}.hero-copy>p{color:#d0dae2}.hero-location{color:#c3d0da}.hero-sheen{left:40%}.hero-bottom{background:linear-gradient(90deg,var(--accent) 0 40%,#00abb32a 40%)}
.standards{background:#17232c;border-color:#2c414d}.standard{border-color:#36515d}.standard svg{stroke:var(--accent)}.standard span{color:#b6c2cb}
.tabs .tab{color:#b6c2cb}.tabs .tab[aria-selected=true]{color:var(--bright-accent);border-color:var(--accent)}
.service-card,.inclusions>div,.journal-card,.contact-card,.contact-form-shell{background:var(--surface);color:#eaeaea;border-color:var(--line)}.service-card.featured{background:linear-gradient(145deg,#123943,#16242e);border-color:var(--accent);box-shadow:inset 0 3px var(--accent),0 8px 35px #00abb310}.service-card .card-meta{color:#b6c2cb}.service-card .tag,.service-card.featured .tag{background:#00abb326;color:#70e5e9}.service-card li:before,.service-card.featured li:before,.checklist li:before{color:var(--bright-accent)}.service-card.featured p,.service-card.featured ul,.service-card.featured .price small{color:#cedee5}
.craft{background:#141f28}.photo-label{background:#0b141cf2;border-left:3px solid var(--accent)}.photo-label span{color:var(--bright-accent)}.principle{border-color:#334855}.principle .num{color:var(--bright-accent)}
.products{background:#081218;border-block:1px solid #00abb350}.products p{color:var(--bright-accent)}.products a{color:#dce8ec}.products a:hover{color:var(--bright-accent)}
summary:after{color:var(--bright-accent)}.contact{background:var(--accent);color:#081b20}.contact .eyebrow,.contact p{color:#08292e}.contact .btn.dark{background:#101b24;color:white;border-color:#101b24}.contact-actions>a:last-child{border-color:#12444a}.contact .btn.dark:hover{background:#233642}
.footer{background:#080e14;border-top:1px solid #00abb340}.footer h3,.footer .brand-sub{color:var(--bright-accent)}.footer p,.footer address,.footer-links{color:#b9cbd5}.footer-bottom,.preview-note{color:#a7bac6}.mobile-book{background:#0c151df7;border-color:#00abb350}
dialog{background:#19242e;color:#eaeaea}.dialog-close{background:#17242e;border-color:#526777;color:#eaeaea}.gallery-dialog{background:#0b131b}.dialog-inner p,.dialog-inner ul{color:#c3d1da}.gallery-caption{color:#dce8ef}
.page-hero{background:linear-gradient(115deg,#0c151e,#122b36);border-color:var(--accent)}.page-hero h1 em{color:var(--accent)}.page-hero .eyebrow{color:var(--bright-accent)}.page-hero p,.breadcrumbs{color:#cddce5}
.jump-links a{background:#1a2833;color:#dde9ee;border-color:#405462}.jump-links a:hover{color:var(--bright-accent);border-color:var(--accent)}.info-band{background:#10313b;border-color:var(--accent)}.info-band p{color:#d4e4e9}.rich h2,.rich h3{color:#eaeaea}.reading-aside a{color:#b9cdd7}.reading-aside a:hover{color:var(--bright-accent)}.price-list{background:var(--surface)}.price-list th{background:#11363f;color:#d9f5f5}
.gallery-filters button{background:#17232d;color:#dae6ed;border-color:#405362}.gallery-filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#081b20}.photo-item>a{background:#15212a}.journal-card h2 a:hover{color:var(--bright-accent)}
.contact-form-shell iframe{background:white;border-radius:3px}.video-frame{background:#101e27}.skip{color:#081b20}
@media(max-width:1150px){.brand-name{font-size:23px}.brand-logo{width:62px;height:62px}.brand{gap:9px}.nav-links{gap:18px}.nav-actions{gap:12px}}
@media(max-width:850px){.nav{min-height:86px}.hero-visual{left:0;width:100%}.hero:after{background:linear-gradient(90deg,#0b1016f5 0%,#0b1016d9 30%,#0b101650 72%,#0b101615)}.hero-sheen{left:35%}}
@media(max-width:600px){.nav{min-height:82px}.brand-logo{width:58px;height:58px}.brand-name{font-size:24px}.brand-sub{font-size:9px}.hero-visual{top:auto;bottom:0;height:54%;width:100%;object-position:72% center}.hero:after{background:linear-gradient(180deg,#0b1016 0%,#0b1016 35%,#0b1016ee 45%,#0b101630 72%,#0b101615 100%)}.hero-sheen{left:0;top:46%}.footer .brand-logo{width:78px;height:78px}}

/* Shared cool color balance: originals remain untouched, including comparison photos. */
.photo-filter-definitions{position:absolute;pointer-events:none;overflow:hidden}
img.photo-grade{--photo-exposure:.93;filter:url("#holy-city-photo-tone") saturate(.84) brightness(var(--photo-exposure)) contrast(1.025)}
img.photo-hero{--photo-exposure:1.12}
img.photo-editorial{--photo-exposure:.98;filter:url("#holy-city-photo-tone") saturate(.94) brightness(var(--photo-exposure))}
/* Overscan keeps image edges outside the hero during the bounded scroll offset. */
.hero.hero-parallax-active .hero-visual{transform:translate3d(0,var(--hero-parallax-y,0px),0) scale(1.18);transform-origin:center;will-change:transform}
@media(prefers-reduced-motion:reduce){.hero.hero-parallax-active .hero-visual{transform:none;will-change:auto}}
