/* Cipriani Residences Miami (started from the Rivage file): styles for the homepage blocks the multi-page template copies
   onto every page (advisor section.section.about#about with .btn-primary, contact section#contact with .contact-form-panel
   and one-column .form-group fields, the classless <footer> with .footer-legal), in the canonical 12-token grayscale with
   zero radius. The copied blocks carry inline styles that read the homepage variables (--charcoal, --cream, --slate,
   --tone); they are defined here with canonical values so those inline styles resolve on the pages.
   The homepage's micro-interaction classes (mi-*) ride along inside the copied blocks; on the pages they are always visible.
   Source: C:\Users\adria\wire-tools\multipage\sites\cipriani\site.css (deployed as /wire-pages-site.css) */
:root{--charcoal:var(--g900);--cream:var(--g50);--slate:var(--g700);--tone:var(--g600);--tone-dark:var(--g800);--text-light:var(--g600)}
.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-tag{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-primary{display:inline-block;background:var(--g900);color:var(--white);padding:16px 40px;font-family:var(--font-body);font-weight:600;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;border-radius:0;min-height:44px;transition:background var(--transition)}
.about .btn-primary:hover{background:var(--black)}
@media(max-width:768px){section.about{padding:64px 20px}}

/* CONTACT */
section#contact{background:var(--g900)!important;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)!important;padding:40px;color:var(--g900)}
.contact-form-panel h3{font-family:var(--font-heading);font-size:26px;font-weight:300;color:var(--g900)!important;margin-bottom:24px}
#contact .form-group{margin-bottom:16px}
#contact .form-group label{display:block;font-size:13px;font-weight:500;color:var(--g900)!important;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 p{color:var(--g700)}
@media(max-width:768px){section#contact{padding:64px 20px}#contact .contact-grid{grid-template-columns:1fr;gap:36px}.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-brand img{height:28px;width:auto}
body>footer .footer-brand p{font-size:14px;line-height:1.7;color:rgba(255,255,255,0.6);margin:0 auto 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-links a,body>footer .footer-legal a{display:inline-block;color:rgba(255,255,255,0.65);font-size:14px;padding:4px 6px}
body>footer .footer-links a:hover,body>footer .footer-legal a:hover{color:var(--white)}
body>footer .footer-legal{flex-wrap:wrap}
body>footer .footer-bottom{max-width:var(--max-width);margin:24px auto 0;padding-top:24px;border-top:1px solid rgba(255,255,255,0.08);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}}

/* GATES (pricing request box, unit prices, 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}
/* light frosted lock. 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-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}
.inv-price{display:inline-block;cursor:pointer;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--g900);border-bottom:1px solid var(--g500);padding:2px 0;min-height:24px}
.inv-price:hover{border-bottom-color:var(--g900)}

/* PAGE TABLES */
.stack-table td:first-child{white-space:nowrap;font-weight:500;color:var(--black)}
.unit-table td{white-space:nowrap}
.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)}
