/* Contact layout, scoped to preserve shared navigation and cart. */
body[data-page=contact]{background:#fdfdfc;color:#2b4736}
.zen-contact-main{background:linear-gradient(180deg,#edf3f0a6,transparent 400px);padding:58px 24px 64px}
.zen-contact-layout{max-width:1104px;margin:auto;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start}
.zen-contact-copy,.zen-contact-media{min-width:0}
.zen-contact-eyebrow{margin:0 0 17px;font-size:12px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#436d54}
.zen-contact-intro h1{font-size:48px;line-height:1.17;letter-spacing:-1.2px;font-weight:500;margin:0 0 20px;color:#1d3225}
.zen-contact-intro>p:last-child{margin:0;font-size:15px;line-height:1.8;color:#66766c;max-width:420px}
.zen-contact-info{display:grid;gap:24px;margin:30px 0}
.zen-contact-info-row{display:flex;align-items:flex-start;gap:16px}
.zen-contact-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:50%;background:#edf3f0;color:#355642;transition:background .2s,color .2s}
.zen-contact-icon svg{width:21px;height:21px}
.zen-contact-info-row:hover .zen-contact-icon{background:#355642;color:white}
.zen-contact-info-row>div{padding-top:2px;min-width:0}
.zen-contact-info-row h2,.zen-contact-social>h2{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.3px;color:#718077;margin:0 0 5px;line-height:1.5}
.zen-contact-info-row p,.zen-contact-info-row a{font-size:18px;line-height:1.55;font-weight:500;color:#1d3225;margin:0;overflow-wrap:anywhere}
.zen-contact-info-row a:hover{text-decoration:underline;text-underline-offset:4px}
.zen-contact-social{margin-bottom:32px}
.zen-contact-social>h2{margin-bottom:14px}
.zen-contact-social-links{display:flex;gap:14px}
.zen-contact-social-links a{width:48px;height:48px;display:grid;place-items:center;background:#fff;border:1px solid #dce8e1;border-radius:12px;box-shadow:0 2px 4px #2b473605;transition:transform .2s,border-color .2s}
.zen-contact-social-links a:hover{transform:translateY(-2px);border-color:#558769}
.zen-contact-social-links svg{width:21px;height:21px}
.zen-contact-message{border-top:1px solid #dce8e1;padding-top:27px}
.zen-contact-message>h2{font-size:24px;letter-spacing:-.4px;font-weight:500;color:#1d3225;margin:0 0 20px}
#contact-message-form{display:grid;gap:14px}
.zen-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#contact-message-form label{display:block;min-width:0}
#contact-message-form input,#contact-message-form textarea{display:block;width:100%;max-width:100%;background:#fff;border:1px solid #dce8e1;border-radius:12px;color:#2b4736;padding:13px 15px;font-size:14px;line-height:1.6;box-shadow:0 1px 3px #2b473604}
#contact-message-form textarea{resize:vertical;min-height:122px}
#contact-message-form input::placeholder,#contact-message-form textarea::placeholder{color:#8a958e}
#contact-message-form input:focus,#contact-message-form textarea:focus{border-color:#558769;outline:2px solid #bed5c766;outline-offset:1px}
.zen-contact-submit{justify-self:start;display:flex;gap:14px;align-items:center;justify-content:center;border-radius:12px;background:#2b4736;color:#fff;padding:14px 25px;min-height:50px;font-size:14px;font-weight:600;box-shadow:0 4px 15px #2b473624;transition:background .2s,transform .2s}
.zen-contact-submit:hover{background:#1d3225;transform:translateY(-1px)}
.zen-contact-submit svg{width:18px;height:18px}
.zen-contact-form-note{font-size:12px;color:#718077;line-height:1.7;margin:0}
#contact-message-status{font-size:13px;color:#355642;margin:0;padding:12px;border-radius:10px;background:#edf3f0}
#contact-message-fallback label{font-size:13px}#contact-message-draft{margin-top:7px}#contact-message-fallback a{display:inline-block;font-size:14px;text-decoration:underline;margin-top:10px}
.zen-contact-media{display:flex;flex-direction:column;gap:32px}
.zen-contact-map,.zen-contact-video-shell{padding:8px;border:1px solid #dce8e1;border-radius:24px;box-shadow:0 2px 5px #2b473605;background:#fff}
.zen-contact-frame{position:relative;aspect-ratio:16/10;border-radius:16px;overflow:hidden;background:#edf3f0}
.zen-contact-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.zen-contact-map>a,.zen-contact-video>a{display:block;font-size:12px;line-height:1.6;padding:9px 9px 2px;color:#436d54;width:fit-content}
.zen-contact-map>a:hover,.zen-contact-video>a:hover{text-decoration:underline}
.zen-contact-video>h2{font-size:20px;font-weight:500;letter-spacing:-.3px;display:flex;align-items:center;gap:9px;margin:0 0 15px;line-height:1.5;color:#1d3225}
.zen-contact-video>h2 svg{width:21px;height:21px;flex:0 0 21px;color:#436d54}
.zen-contact-video-shell{background:#edf3f0}.zen-contact-video .zen-contact-frame{aspect-ratio:16/9;background:#1d3225}
.zen-contact-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
body[data-page=contact] [hidden]{display:none!important}
@media(max-width:1050px){.zen-contact-layout{gap:36px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.zen-contact-intro h1{font-size:42px}.zen-contact-fields{grid-template-columns:1fr}.zen-contact-main{padding-top:38px}}
@media(max-width:850px){.zen-contact-layout{grid-template-columns:minmax(0,1fr);max-width:620px;gap:32px}.zen-contact-fields{grid-template-columns:1fr 1fr}.zen-contact-intro>p:last-child{max-width:none}.zen-contact-main{padding-top:30px}.zen-contact-frame{aspect-ratio:16/9}}
@media(max-width:480px){.zen-contact-main{padding:26px 20px 36px}.zen-contact-intro h1{font-size:38px;letter-spacing:-.8px}.zen-contact-intro>p:last-child{font-size:14px}.zen-contact-fields{grid-template-columns:1fr}.zen-contact-info-row p,.zen-contact-info-row a{font-size:17px}.zen-contact-info{margin:26px 0}.zen-contact-message>h2{font-size:23px}.zen-contact-submit{width:100%}.zen-contact-video>h2{font-size:18px}.zen-contact-media{gap:24px}}
@media(prefers-reduced-motion:reduce){.zen-contact-icon,.zen-contact-social-links a,.zen-contact-submit{transition:none}.zen-contact-submit:hover,.zen-contact-social-links a:hover{transform:none}}
.zen-contact-video-placeholder{min-height:270px;aspect-ratio:16/9;padding:30px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:16px;background:#edf3f0}
.zen-contact-video-placeholder>svg{width:34px;height:34px;margin-bottom:12px;color:#558769}
.zen-contact-video-placeholder>strong{font-size:20px;font-weight:500;color:#2b4736}
.zen-contact-video-placeholder>p{font-size:13px;line-height:1.8;color:#66766c;margin:9px 0 16px}
.zen-contact-directions{padding:10px 16px;border:1px solid #bed5c7;border-radius:10px;background:#fff;font-size:13px;color:#355642}
.zen-contact-directions:hover{border-color:#558769}
.zen-contact-video-placeholder{width:100%;min-width:0;aspect-ratio:auto}
.zen-contact-frame video{width:100%;height:100%;display:block;object-fit:contain;background:#142a1d}.zen-contact-video-link{display:block;width:fit-content;margin:10px auto 4px;padding:5px 10px;color:#355642;font-size:13px;text-decoration:underline;text-underline-offset:4px}.zen-contact-submit:disabled{cursor:wait;opacity:.6}#contact-message-status[data-error=true]{color:#a23a30}
