/* Homepage replacement only. Existing site styles and moving watermark remain unchanged. */
.hero:has(>.home-logo-watermark) .hero-copy .actions>a.button,.hero:has(>.home-logo-watermark) .hero-copy .actions>a.button>span{color:#c8102e}
.hero-glass-panel{width:100%;min-width:0;position:relative;z-index:1;align-self:center}
.hero-glass-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:12px}
.hero-glass-tile{display:flex;flex-direction:column;position:relative;min-width:0;overflow:hidden;text-decoration:none;color:#fff;border:1px solid #ffffffdd;border-radius:15px;background:linear-gradient(135deg,#ffffff0a,#d7e7f40d);box-shadow:0 8px 22px #264b6812,inset 0 1px 0 #ffffffb3;isolation:isolate;transition:box-shadow .25s,border-color .25s}
.hero-glass-photo{position:relative;width:100%;height:clamp(150px,15.8vw,230px);overflow:hidden;pointer-events:none;background:transparent}
.hero-glass-photo svg{display:block;width:100%;height:100%;opacity:.72;mix-blend-mode:multiply;transition:opacity .25s}
.hero-glass-caption{position:relative;display:flex;align-items:center;gap:7px;min-height:43px;padding:10px 11px;background:linear-gradient(105deg,#255c8999,#337db469);font-size:clamp(10px,1.1vw,15px);font-weight:600;line-height:1.25;text-shadow:0 1px 2px #17365045;box-shadow:inset 0 1px 0 #ffffff26}
.hero-glass-caption>.glass-accent{position:absolute;top:-8px;left:12px;width:19px;height:2px;background:#c8102e}.glass-arrow{margin-left:auto;font-size:20px;font-weight:400;transition:transform .25s}
.glass-owner{grid-column:1/-1}.glass-owner .hero-glass-photo{height:clamp(112px,12.1vw,165px)}.glass-owner .hero-glass-photo svg{opacity:.7}
.owner-caption{display:grid;grid-template-columns:1fr auto;gap:4px;padding:13px 16px 14px}.owner-caption strong{font-size:clamp(18px,1.7vw,24px);font-weight:600}.owner-direct{grid-column:1;font-size:clamp(12px,1.2vw,17px);font-weight:500}.owner-detail{grid-column:1;font-size:clamp(10px,.95vw,13px);font-weight:400;line-height:1.55}.owner-caption>.glass-arrow{grid-column:2;grid-row:1/4;align-self:center}
.hero-glass-action{display:flex;justify-content:flex-end;margin-top:16px}.hero-glass-action .glass-assignment{color:#176aa7;min-height:49px;padding:14px 20px;font-size:12px;gap:25px;white-space:nowrap}.hero-glass-action .glass-assignment>span{color:#176aa7}
.hero-glass-tile:focus-visible{outline:3px solid #176aa7;outline-offset:4px;box-shadow:0 0 0 6px #fff}.glass-assignment:focus-visible{outline:3px solid #176aa7;outline-offset:4px}
@media(hover:hover){.hero-glass-tile:hover{border-color:#fff;box-shadow:0 12px 28px #264b6825}.hero-glass-tile:hover .hero-glass-photo svg{opacity:.82}.hero-glass-tile:hover .glass-arrow{transform:translateX(3px)}}
@media(max-width:1000px) and (min-width:721px){.hero-glass-caption{padding:9px 8px;font-size:10px;gap:3px}.hero-glass-caption>.glass-arrow{font-size:15px}.owner-caption{padding:12px}.owner-caption strong{font-size:18px}.owner-direct{font-size:12px}.owner-detail{font-size:10px}}
@media(max-width:720px){.hero-glass-grid{gap:9px}.hero-glass-photo{height:190px}.hero-glass-caption{font-size:11px;padding:10px 8px;min-height:47px}.hero-glass-caption>.glass-arrow{font-size:16px}.glass-owner .hero-glass-photo{height:140px}.owner-caption{padding:13px 14px}.owner-caption strong{font-size:22px}.owner-direct{font-size:15px}.owner-detail{font-size:12px}.hero-glass-action .glass-assignment{font-size:12px;padding:14px 18px}}
@media(max-width:420px){.hero-glass-grid{grid-template-columns:1fr 1fr 1.15fr;gap:7px}.hero-glass-photo{height:145px}.hero-glass-caption{font-size:10px;padding:9px 7px;min-height:45px}.hero-glass-caption>.glass-arrow{display:none}.glass-owner .hero-glass-photo{height:120px}.owner-caption strong{font-size:20px}.owner-direct{font-size:14px}.owner-detail{font-size:11px}.hero-glass-action{justify-content:stretch}.hero-glass-action .glass-assignment{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.hero-glass-tile,.hero-glass-photo svg,.glass-arrow{transition:none}}html.motion-stopped .hero-glass-tile,html.motion-stopped .hero-glass-photo svg,html.motion-stopped .glass-arrow{transition:none}

/* Keep the resting glass treatment; reveal full-opacity, vivid photos on interaction. */
.hero-glass-photo svg{transition:opacity .3s ease,filter .3s ease}
@media(hover:hover){.hero-glass-tile:hover .hero-glass-photo svg{opacity:1;mix-blend-mode:normal;filter:contrast(1.3) saturate(1.35) brightness(.97)}}
.hero-glass-tile:focus-visible .hero-glass-photo svg{opacity:1;mix-blend-mode:normal;filter:contrast(1.3) saturate(1.35) brightness(.97)}
@media(prefers-reduced-motion:reduce){.hero-glass-photo svg{transition:none}}
/* Centered metallic assignment control and quick perimeter feedback. */
.hero-glass-action{justify-content:center}.hero-glass-action .glass-assignment,.hero-glass-action .glass-assignment>span{color:#c8102e}.hero-glass-action .glass-assignment{position:relative;overflow:hidden;background:linear-gradient(115deg,#f9fbfd 0%,#e7edf2 30%,#c2ced9 49%,#f3f6f9 68%,#d9e2ea 100%);border-color:#9eafbf}
.glass-border-trace{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4;overflow:visible}.glass-border-trace rect{fill:none;stroke:#c8102e;stroke-width:2;stroke-dasharray:100;stroke-dashoffset:100;opacity:0;transition:stroke-dashoffset .45s ease-out,opacity .12s}
.hero-glass-tile:hover .glass-border-trace rect,.hero-glass-tile:focus-visible .glass-border-trace rect{stroke-dashoffset:0;opacity:1}
.glass-synced-sheen{position:absolute;pointer-events:none;top:-30%;bottom:-30%;left:0;width:70px;background:linear-gradient(90deg,transparent,#ffffffb8,transparent);opacity:0;transform:translateX(-100px) skewX(-18deg);z-index:2}
@media(max-width:420px){.hero-glass-action{justify-content:center}.hero-glass-action .glass-assignment{width:auto;max-width:100%}}
@media(prefers-reduced-motion:reduce){.glass-border-trace rect{transition:none}.glass-synced-sheen{display:none}}html.motion-stopped .glass-border-trace rect{transition:none}html.motion-stopped .glass-synced-sheen,html.form-active .glass-synced-sheen{visibility:hidden}

/* Second homepage entry to the existing private-message dialog. */
.hero-copy .actions>.button,#request .button{position:relative;overflow:hidden}
#request .button[data-open-request],#request .button[data-open-request]>span{color:#c8102e}
#request .contact .bottom-private-contact>.glass-synced-sheen{position:absolute;top:-30%;bottom:-30%;left:0;width:70px;font-size:0}
#request .contact:has(.bottom-private-contact){display:grid;grid-template-columns:minmax(0,1fr) 150px;column-gap:24px;align-items:start}
#request .contact:has(.bottom-private-contact)>:not(.bottom-private-contact){grid-column:1}
#request .contact .bottom-private-contact{grid-column:2;grid-row:1/6;align-self:center;display:flex;flex-direction:column;justify-content:center;gap:17px;width:150px;min-height:136px;padding:22px 18px;border:1px solid #a5b6c6;border-radius:12px;background:linear-gradient(120deg,#fbfcfe,#d1dce6 48%,#f3f7fa);box-shadow:0 8px 18px #24456014,inset 0 1px #fff;color:#c8102e;font-size:16px;font-weight:600;text-decoration:none;line-height:1.3}
#request .contact .bottom-private-contact>span{color:#c8102e;font-size:16px;letter-spacing:0}#request .contact .bottom-private-contact>span:nth-child(2){font-size:24px}
#request .contact .bottom-private-contact::after{content:none}
@media(max-width:1050px){#request .contact:has(.bottom-private-contact){grid-template-columns:minmax(0,1fr) 128px;column-gap:15px}#request .contact .bottom-private-contact{width:128px;min-height:128px}}
@media(max-width:400px){#request .contact:has(.bottom-private-contact){grid-template-columns:minmax(0,1fr) 110px;column-gap:12px}#request .contact .bottom-private-contact{width:110px;min-height:116px;padding:17px 10px;font-size:14px}#request .contact .bottom-private-contact>span{font-size:14px}}
@media(min-width:1100px){.glass-owner .owner-direct{font-size:clamp(12px,1.03vw,15px);white-space:nowrap}}
/* Match the softer glass appearance of the other homepage photographs. */
.glass-owner .hero-glass-photo svg{opacity:.42;mix-blend-mode:multiply;filter:saturate(.8) brightness(1.08)}
@media(hover:hover){.glass-owner:hover .hero-glass-photo svg{opacity:1;mix-blend-mode:normal;filter:contrast(1.3) saturate(1.35) brightness(.97)}}
.glass-owner:focus-visible .hero-glass-photo svg{opacity:1;mix-blend-mode:normal;filter:contrast(1.3) saturate(1.35) brightness(.97)}
