/* Rivage Bal Harbour: styles for the homepage blocks the multi-page template copies onto every page
   (advisor section.section.about#about, contact section#contact with .contact-form-panel and two-column .form-row,
   the classless <footer>), restated in the canonical 12-token grayscale with zero radius.
   The homepage's micro-interaction classes (mi-*) ride along inside the copied blocks; on the pages they are
   always visible (the pages run their own section reveal).
   Source: C:\Users\adria\wire-tools\multipage\sites\rivage\site.css (deployed as /wire-pages-site.css) */
.mi-fade-up,.mi-slide-left,.mi-headline-bloom,.mi-title-reveal,.mi-text-fade,.mi-stat,.mi-underline-draw,.mi-btn-glow{opacity:1!important;transform:none!important;filter:none!important}
.section-tag{display:block;font-family:var(--font-body);font-weight:600;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--g600);margin-bottom:16px}

/* ADVISOR */
section.about{background:var(--g50);padding:96px 60px}
.about-text{padding:12px 0}
.about-text .section-eyebrow{font-weight:600;letter-spacing:3px;color:var(--g700)}
.section-title{font-family:var(--font-heading);font-weight:300;font-size:clamp(32px,4vw,48px);color:var(--g900);margin-bottom:20px}
.about-text .section-sub{font-size:17px;color:var(--g700);line-height:1.8;max-width:680px}
.about .btn-o{border:1px solid var(--g900);color:var(--g900);padding:14px 36px}
.about .btn-o:hover{background:var(--g900);color:var(--white)}
@media(max-width:768px){section.about{padding:64px 20px}}

/* CONTACT */
section#contact{background:var(--g900);color:var(--white);padding:96px 60px}
#contact .section-inner{max-width:var(--max-width);margin:0 auto}
#contact .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;margin-top:0}
#contact .section-tag{color:rgba(255,255,255,0.6)!important}
#contact .contact-info h2{color:var(--white);margin-bottom:16px}
#contact .contact-info p{color:rgba(255,255,255,0.7);margin-bottom:24px;max-width:100%}
#contact .contact-channels{display:flex;flex-direction:column;gap:12px;margin-top:32px}
#contact .contact-channel{display:flex;align-items:center;gap:12px;padding:14px 16px;background:rgba(255,255,255,0.08);font-size:15px;color:rgba(255,255,255,0.85)}
#contact .contact-channel:hover{background:rgba(255,255,255,0.12);color:var(--white)}
.contact-form-panel{background:var(--white);padding:40px;color:var(--g900)}
.contact-form-panel h3{font-family:var(--font-heading);font-size:26px;font-weight:300;color:var(--g900);margin-bottom:24px}
#contact .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:0}
#contact .form-group{margin-bottom:16px}
#contact .form-group label{display:block;font-size:13px;font-weight:500;color:var(--g900);margin-bottom:6px;letter-spacing:0.5px}
#contact .form-group input,#contact .form-group select,#contact .form-group textarea{width:100%;padding:12px 16px;background:var(--g50);border:1px solid var(--g300);border-radius:0;font-family:var(--font-body);font-size:1rem;color:var(--g900);outline:none;transition:border-color var(--transition)}
#contact .form-group input:focus,#contact .form-group select:focus,#contact .form-group textarea:focus{border-color:var(--g900)}
#contact .form-group textarea{min-height:100px;resize:vertical}
#contact .form-submit{display:block;width:100%;background:var(--g900);color:var(--white);padding:16px 48px;font-family:var(--font-body);font-weight:600;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;border:none;border-radius:0;cursor:pointer;min-height:44px;margin-top:8px}
#contact .form-submit:hover{background:var(--black)}
#contact .form-consent{color:var(--g700)!important}
#contact .form-consent a{color:var(--g800)!important}
#contact #form-success{display:none;text-align:center;padding:40px}
#contact #form-success h3{color:var(--g900)}
#contact #form-success p{color:var(--g700);margin:12px auto 0}
@media(max-width:768px){section#contact{padding:64px 20px}#contact .contact-grid{grid-template-columns:1fr;gap:36px}#contact .form-row{grid-template-columns:1fr;gap:0}.contact-form-panel{padding:24px 18px}}

/* FOOTER (classless <footer>) */
body>footer{background:var(--g900);color:rgba(255,255,255,0.6);padding:60px;border-top:1px solid rgba(255,255,255,0.08)}
body>footer .footer-inner{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,0.08)}
body>footer .footer-brand img{height:28px;width:auto;margin-bottom:16px}
body>footer .footer-brand p{font-size:14px;line-height:1.7;color:rgba(255,255,255,0.6);margin-bottom:4px;max-width:none}
body>footer .footer-brand a{color:rgba(255,255,255,0.85)}
body>footer .footer-brand a:hover{color:var(--white)}
body>footer .footer-section-title{font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:16px}
body>footer .footer-links a{display:block;color:rgba(255,255,255,0.65);font-size:14px;padding:4px 0}
body>footer .footer-links a:hover{color:var(--white)}
body>footer .footer-bottom{max-width:var(--max-width);margin:24px auto 0;text-align:center;font-size:12px;line-height:1.7}
body>footer .footer-bottom p{max-width:980px;margin:0 auto 8px;color:rgba(255,255,255,0.5)}
@media(max-width:768px){body>footer{padding:50px 20px 30px}body>footer .footer-inner{grid-template-columns:1fr;gap:32px}}

/* GATES (pricing request box, floor plan chips) */
.request-box{background:var(--white);border:1px solid var(--g300);padding:36px}
.request-box h3{font-size:26px;margin-bottom:10px}
.request-box p{font-size:16px;color:var(--g700)}
.gate-wrap .wire-lock-overlay{padding:0 20px;text-align:center}
.wire-gated{filter:blur(6px);pointer-events:none;user-select:none;opacity:.6}
/* same light frosted lock as the Rivage homepage floor plan gate. Prefixed with body: wire-lead-capture.js injects its own
   dark .wire-lock-overlay rules after this stylesheet, and equal specificity would let them win (dark text on dark). */
body .wire-lock-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(250,250,250,0.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;z-index:5;padding:20px;text-align:center;color:var(--g900)}
body .wire-lock-overlay .lock-icon{font-size:28px}
body .wire-lock-overlay .lock-text{font-family:var(--font-heading);font-size:28px;font-weight:300;color:var(--g900)}
body .wire-lock-overlay .lock-sub{font-size:14px;color:var(--g600);max-width:420px}

/* PAGE TABLES */
.stack-table td:first-child{white-space:nowrap;font-weight:500;color:var(--black)}
.bg-dark .price-table{background:transparent}
.bg-dark .price-table caption,.bg-dark .price-table th{color:rgba(255,255,255,0.6);border-bottom-color:rgba(255,255,255,0.18)}
.bg-dark .price-table td{color:rgba(255,255,255,0.85);border-bottom-color:rgba(255,255,255,0.12)}
.bg-dark .price-table td.strong{color:var(--white)}
.bg-dark .section-sub{color:rgba(255,255,255,0.7)}
.nearby h3 a{color:var(--black);border-bottom:1px solid var(--g400)}
.nearby h3 a:hover{border-bottom-color:var(--black)}
