/* Contact v1.4: scoped, additive. All photographic overlays stay behind content. */
.page-contact nav a[aria-current=page]:after{width:100%}
.page-contact .ct-scene,.page-contact .ct-card{position:relative;isolation:isolate;overflow:hidden}
.page-contact .ct-background{position:absolute;inset:0;z-index:-1;pointer-events:none}
.page-contact .ct-background img{width:100%;height:100%;object-fit:cover}
.page-contact .ct-background:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080b0cf2 0%,#080b0cc4 28%,#080b0c45 58%,#080b0c0a 80%),linear-gradient(0deg,#080b0c70,transparent 25%,transparent 80%,#080b0c66)}
.page-contact .ct-foreground,.page-contact .ct-invitation{position:relative;z-index:1}
.page-contact .ct-invitation{display:flex;align-items:center;justify-content:space-between;gap:60px;padding-block:120px;min-height:680px}
.page-contact .ct-hero .ct-invitation{padding-top:180px;padding-bottom:100px;min-height:820px}
.page-contact .ct-copy{max-width:660px;width:60%}
.page-contact h1{font-size:clamp(62px,6.2vw,106px);line-height:1;letter-spacing:-.025em;max-width:640px;color:var(--ivory)}
.page-contact h2{max-width:950px;font-size:clamp(42px,4.1vw,70px)}
.page-contact .ct-subhead{font:400 clamp(25px,2.1vw,35px)/1.2 var(--serif);color:var(--ivory);margin-top:20px}
.page-contact .ct-prose{font-size:17px;line-height:1.85;max-width:780px;margin-top:26px}
.page-contact .ct-copy .ct-prose{max-width:590px}
.page-contact .ct-email{display:flex;align-items:center;gap:20px;margin-top:32px;color:var(--gold);font:400 clamp(25px,2.3vw,36px)/1.3 var(--serif);width:fit-content;min-height:44px}
.page-contact .ct-email svg{width:30px;flex:none;stroke:var(--gold);stroke-width:1.3;fill:none}
.page-contact .ct-email:hover span{text-decoration:underline;text-underline-offset:6px}
.page-contact .ct-labels{list-style:none;border-left:1px solid var(--gold);padding:20px 0 20px 28px;margin:70px 0 0;color:var(--gold);font-size:10px;font-weight:600;letter-spacing:.2em;line-height:3.6;text-shadow:0 2px 6px #000}
.page-contact .ct-chapter{padding-block:clamp(88px,8vw,148px);border-top:1px solid var(--line)}
.page-contact .ct-intro{margin-bottom:64px}
.page-contact .ct-start .ct-prose{max-width:1000px}
.page-contact .ct-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.page-contact .ct-card{border:1px solid #b69a6f75;display:flex;min-height:620px;transition:border-color .35s,box-shadow .35s}
.page-contact .ct-card .ct-background img{object-position:center;transition:transform 1s var(--ease-premium)}
.page-contact .ct-card .ct-background:after{background:linear-gradient(0deg,#080b0c 0%,#080b0cf5 24%,#080b0ca6 50%,#080b0c0a 80%)}
.page-contact .ct-card-copy{display:flex;flex-direction:column;align-items:flex-start;padding:240px 36px 38px;width:100%}
.page-contact .ct-card h3{font-size:clamp(32px,3vw,47px);max-width:320px;min-height:2.08em}
.page-contact .ct-card h3:after{content:'';display:block;width:25px;height:1px;background:var(--gold);margin-top:23px}
.page-contact .ct-card p{font-size:16px;line-height:1.8;margin:22px 0 32px}
.page-contact .ct-card .button{margin-top:auto}
.page-contact .ct-card:focus-within{border-color:var(--gold);box-shadow:0 0 24px #dec39412}
.page-contact .ct-matters .ct-background:after{background:linear-gradient(180deg,#080b0cf0,#080b0c70 33%,#080b0c85 60%,#080b0cf2)}
.page-contact .ct-process .ct-background:after{background:linear-gradient(180deg,#080b0ce0,#080b0c99 30%,#080b0ce8 75%,#080b0c)}
.page-contact .ct-questions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8%;position:relative;padding:80px 6% 0;margin-top:25px}
.page-contact .ct-arc{position:absolute;inset:0 0 auto;width:100%;height:90px;overflow:visible;fill:none;stroke:#e8c48a;stroke-width:1.3;filter:drop-shadow(0 0 5px #dcb06a88);pointer-events:none}
.page-contact .ct-questions article{position:relative;max-width:330px}
.page-contact .ct-node{position:absolute;top:-43px;left:0;width:13px;height:13px;border:1px solid #ffe0a8;background:#c09a58;border-radius:50%;box-shadow:0 0 0 5px #dec39418,0 0 20px #e7ad64}
.page-contact .ct-questions article:nth-child(3) .ct-node{top:-69px}
.page-contact .ct-questions h3{font-size:clamp(29px,2.7vw,43px);min-height:2.1em}
.page-contact .ct-questions p{margin-top:28px;padding-top:20px;border-top:1px solid #dec39477;font-size:16px;line-height:1.85}
.page-contact .ct-note{margin:65px auto 0;max-width:950px;font-size:14px;font-style:italic;text-align:center;color:#d6d3ca}
.page-contact .ct-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:42px;padding:0;margin:0;position:relative}
.page-contact .ct-steps:before{content:'';position:absolute;top:24px;left:24px;right:24px;height:1px;background:#c7a97099}
.page-contact .ct-steps li{position:relative}
.page-contact .ct-step-number{position:relative;display:flex;align-items:center;justify-content:center;width:49px;height:49px;border:1px solid var(--gold);border-radius:50%;background:#080b0c;color:var(--gold);font-size:12px;letter-spacing:.1em;margin-bottom:30px}
.page-contact .ct-steps h3{font-size:clamp(28px,2.3vw,38px);margin-bottom:20px}
.page-contact .ct-steps p{font-size:16px;line-height:1.85;max-width:300px}
.page-contact .ct-direct{border-top:1px solid var(--line)}
.page-contact .ct-direct .ct-background img{object-position:65% center}
.page-contact .ct-direct .ct-background:after{background:linear-gradient(90deg,#080b0cec,#080b0cbb 31%,#080b0c22 65%,#080b0c0a),linear-gradient(0deg,#080b0c99,transparent 35%)}
@media(hover:hover) and (pointer:fine){.page-contact .ct-card:hover{border-color:var(--gold);box-shadow:0 0 24px #dec39412}.page-contact .ct-card:hover img{transform:scale(1.025)}}
@media(min-width:2200px){.page-contact .ct-hero .ct-invitation{min-height:980px}.page-contact .ct-invitation{min-height:840px}.page-contact .ct-copy{max-width:760px}.page-contact h1{font-size:120px}.page-contact .ct-prose{font-size:19px}.page-contact .ct-card{min-height:760px}.page-contact .ct-card-copy{padding:330px 48px 48px}.page-contact .ct-card p,.page-contact .ct-questions p,.page-contact .ct-steps p{font-size:18px}}
@media(max-width:1100px){.page-contact .ct-copy{width:75%;max-width:620px}.page-contact .ct-labels{display:none}.page-contact .ct-cards{gap:20px}.page-contact .ct-card-copy{padding:210px 24px 30px}.page-contact .ct-card h3{font-size:35px}.page-contact .ct-card p{font-size:15px}.page-contact .ct-steps{gap:28px}.page-contact .ct-steps h3{font-size:29px}}
@media(max-width:900px){.page-contact .ct-cards{grid-template-columns:1fr}.page-contact .ct-card{min-height:480px}.page-contact .ct-card-copy{padding:180px 40px 40px;max-width:580px}.page-contact .ct-card h3{min-height:0;font-size:44px}.page-contact .ct-card p{font-size:16px}.page-contact .ct-card .ct-background:after{background:linear-gradient(90deg,#080b0c99,transparent),linear-gradient(0deg,#080b0c,#080b0ce0 25%,#080b0c30 85%)}.page-contact .ct-questions{gap:5%;padding-inline:0}.page-contact .ct-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}.page-contact .ct-steps:before{display:none}.page-contact .ct-step-number{margin-bottom:23px}.page-contact .ct-copy{width:85%}}
@media(max-width:700px){.page-contact .ct-hero .ct-invitation{padding-top:145px;padding-bottom:80px;min-height:760px}.page-contact .ct-invitation{padding-block:90px;min-height:640px}.page-contact .ct-copy{width:100%}.page-contact h1{font-size:clamp(52px,13vw,74px)}.page-contact h2{font-size:clamp(40px,10vw,54px)}.page-contact .ct-prose{font-size:15px;line-height:1.85}.page-contact .ct-subhead{font-size:27px}.page-contact .ct-email{font-size:clamp(24px,6.2vw,31px);gap:12px;letter-spacing:-.025em}.page-contact .ct-email svg{width:24px}.page-contact .ct-background img{object-position:62% center}.page-contact .ct-background:after{background:linear-gradient(90deg,#080b0ce8,#080b0ca6 65%,#080b0c77),linear-gradient(0deg,#080b0c55,transparent)}.page-contact .ct-direct .ct-background:after{background:linear-gradient(90deg,#080b0ce8,#080b0caa 65%,#080b0c77)}.page-contact .ct-intro{margin-bottom:45px}.page-contact .ct-chapter{padding-block:80px}.page-contact .ct-card-copy{padding:190px 28px 32px}.page-contact .ct-card h3{font-size:39px}.page-contact .ct-questions{display:block;padding:0 0 0 30px;margin-top:50px;border-left:1px solid #dec39480}.page-contact .ct-arc{display:none}.page-contact .ct-questions article{max-width:none;margin-bottom:48px}.page-contact .ct-questions article:last-child{margin-bottom:0}.page-contact .ct-node,.page-contact .ct-questions article:nth-child(3) .ct-node{top:10px;left:-37px}.page-contact .ct-questions h3{font-size:34px;min-height:0}.page-contact .ct-questions p{margin-top:18px;padding-top:18px;font-size:15px}.page-contact .ct-note{text-align:left;margin-top:45px;line-height:1.8}.page-contact .ct-steps{display:block;margin-left:24px;border-left:1px solid #dec39477;padding-left:36px}.page-contact .ct-steps li{padding-bottom:42px}.page-contact .ct-steps li:last-child{padding-bottom:0}.page-contact .ct-step-number{position:absolute;left:-61px;top:-5px}.page-contact .ct-steps h3{font-size:32px;padding-top:3px}.page-contact .ct-steps p{font-size:15px}.page-contact .ct-direct .ct-background img{object-position:67% center}}
@media(prefers-reduced-motion:reduce){.page-contact .ct-card:hover img{transform:none}.page-contact .ct-card,.page-contact .ct-card img{transition:none}}

.page-contact .ct-arc circle{fill:#c09a58;stroke:#ffe0a8}
@media(min-width:701px){.page-contact .ct-node{display:none}}
