/* West Eleventh: styles for its own extracted advisor, contact and footer.
   Canonical grayscale aliases only. Shared templates remain unchanged. */
:root{
  --tone:var(--g900);--tone-dark:var(--black);
  --charcoal:var(--g900);--charcoal-light:var(--g800);
  --cream:var(--g100);--cream-dark:var(--g200);
  --slate:var(--g700);--text-light:var(--g600);
  --transition:.3s ease
}
.section-eyebrow{font-family:var(--font-body);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--g600);margin-bottom:16px;text-align:center}
.section-title{font-family:var(--font-heading);font-weight:300;font-size:clamp(32px,4vw,52px);line-height:1.15;letter-spacing:-.5px;color:var(--black);margin-bottom:40px;text-align:center}
.section-sub{font-family:var(--font-body);font-size:17px;line-height:1.8;color:var(--g700)}

/* Advisor: light background, matching the homepage. */
section.about{padding:100px 40px;background:var(--g100);color:var(--g900)}
.about-inner{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:stretch}
.about-img{width:220px;min-height:330px;overflow:hidden}
.about-img video,.about-img img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:0}
.about-text .section-sub{max-width:680px;margin:0 0 12px;text-align:left}
.about-text .btn-o{display:inline-flex;align-items:center;min-height:44px;color:var(--g800);border:1px solid var(--g300);padding:12px 20px;font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none}
.about-text .btn-o:hover{color:var(--black);border-color:var(--black)}
section.about.reveal-on-scroll,section.contact.reveal-on-scroll{opacity:1;transform:none}

/* Contact: dark section and light panel, with legible inherited consent text. */
section#contact.contact{padding:100px 40px;background:var(--g900);color:var(--white)}
section#contact .section-eyebrow{color:var(--g400)}
section#contact .section-title{color:var(--white)}
.contact-grid{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px}
.contact-info-side h3{font-family:var(--font-heading);font-size:28px;font-weight:400;color:var(--white);margin-bottom:8px}
.contact-info-side .contact-subtitle{font-size:15px;line-height:1.8;color:rgba(255,255,255,.7);margin-bottom:32px}
.contact-channel{display:block;padding:16px 20px;background:rgba(255,255,255,.08);margin-bottom:12px;color:var(--white);text-decoration:none;border-radius:0;overflow-wrap:anywhere}
.contact-channel:hover{background:rgba(255,255,255,.12)}
.contact-channel-label{font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--g400);margin-bottom:4px}
.contact-channel-value{font-size:16px;color:var(--white)}
.contact-form-panel{background:var(--g100);color:var(--g900);padding:40px;border-radius:0}
.contact-form-panel h3{font-family:var(--font-heading);font-size:24px;font-weight:400;color:var(--g900);margin-bottom:24px}
.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.form-group{margin-bottom:16px;min-width:0}
.form-group label{display:block;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase;color:var(--g700);margin-bottom:6px}
.form-group input,.form-group select,.form-group textarea{width:100%;max-width:100%;padding:14px 16px;border:1px solid var(--g300);border-radius:0;background:var(--white);color:var(--g900);font-family:var(--font-body);font-size:1rem;line-height:1.5}
.form-group input::placeholder,.form-group textarea::placeholder{color:var(--g600)}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid var(--g900);outline-offset:2px;border-color:var(--g900)}
.form-group textarea{resize:vertical;min-height:100px}
.form-optional{font-size:12px;font-weight:400;color:var(--g600);text-transform:none;letter-spacing:0}
.form-submit{display:block;width:100%;min-height:52px;padding:16px;background:var(--black);color:var(--white);border:0;border-radius:0;font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;margin-top:8px}
.form-submit:hover{background:var(--g800)}
.contact-form-panel .form-consent{color:var(--g900);font-size:.72rem;line-height:1.5}
.contact-form-panel .form-consent a{text-decoration:underline}

/* Footer: classless in this site's homepage. */
body>footer{padding:60px 40px 40px;background:var(--g900);color:var(--white)}
.footer-content{max-width:var(--max-width);margin:0 auto}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:40px}
.footer-brand .footer-logo img{height:28px;width:auto;margin-bottom:16px}
.footer-brand p{font-size:14px;color:rgba(255,255,255,.7);line-height:1.6;overflow-wrap:anywhere}
.footer-brand a{color:inherit;text-decoration:none}
.footer-pages h4,.footer-legal-col h4{font-size:11px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.7);margin-bottom:20px}
.footer-pages a,.footer-legal-col a{display:block;min-height:32px;padding:6px 0;font-size:13px;color:rgba(255,255,255,.75);text-decoration:none}
.footer-pages a:hover,.footer-legal-col a:hover{color:var(--white)}
.footer-legal-col ul{list-style:none;margin:0;padding:0}
.footer-legal-col li{padding:4px 0}
.footer-hub{text-align:center;padding:20px 0;border-top:1px solid rgba(255,255,255,.1);margin-top:24px}
.footer-hub a{display:inline-flex;align-items:center;min-height:44px;color:var(--white);font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:600;text-decoration:none}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:24px;text-align:center;font-size:13px;color:rgba(255,255,255,.65);line-height:1.8}
.footer-bottom p{font-size:13px;color:rgba(255,255,255,.65);line-height:1.8;margin:0 0 12px}

/* Pricing request and plan gates. Higher specificity keeps the lock readable. */
.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{position:relative}
.wire-gated{filter:blur(6px);pointer-events:none;user-select:none;opacity:.6}
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,.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}
.bg-dark .section-sub{color:rgba(255,255,255,.7)}
.plan-block .plan-meta{font-size:14px;color:var(--g700);margin:4px 0 16px}
.unit-table td{white-space:nowrap}

@media(max-width:768px){
  section.about,section#contact.contact{padding:64px 24px}
  .about-inner,.contact-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .about-img{width:100%;max-width:280px;height:350px;margin:0 auto}
  .about-text .section-eyebrow,.about-text .section-title{text-align:left}
  .form-row{grid-template-columns:minmax(0,1fr)}
  .contact-form-panel{padding:24px}
  body>footer{padding:48px 24px 110px}
  .footer-top{grid-template-columns:minmax(0,1fr);gap:32px}
  .request-box{padding:24px}
}
@media(prefers-reduced-motion:reduce){section.about,section.contact{scroll-behavior:auto}}

/* West Eleventh gallery captions and mobile hero fit. */
.gallery-item{position:relative}
.gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:12px;background:rgba(0,0,0,.72);color:var(--white);font-size:12px;line-height:1.4;pointer-events:none}
.nav-links a{white-space:nowrap}
@media(max-width:600px){.page-hero{min-height:760px}.page-hero h1{font-size:42px}.hero-sub{font-size:16px;line-height:1.6}.hero-ctas{gap:10px}.hero-ctas a{min-height:44px}}
