[hidden]{display:none!important}
.about:after{background-image:var(--cms-logo-image,url('assets/brand-mark.svg'))}
@media(min-width:1101px){.collection-body{padding:22px 20px}.collection-body h3{font-size:21px}.collection-card .text-link{font-size:11px;gap:8px}}
@media(min-width:651px) and (max-width:1100px){.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.collection-card,.collection-card+article{display:flex;flex-direction:column}.collection-photo{height:180px;min-height:180px}.collection-body{padding:20px}.collection-body h3{font-size:21px}}
[data-theme-custom="true"]{--paper:var(--cms-paper);--ink:var(--cms-ink);background:var(--cms-paper);color:var(--cms-ink)}
[data-theme-custom="true"] .collections,[data-theme-custom="true"] .process{background:var(--cms-paper);color:var(--cms-ink)}
[data-theme-custom="true"] .header,[data-theme-custom="true"] .about,[data-theme-custom="true"] .contact,[data-theme-custom="true"] .footer,[data-theme-custom="true"] .signature-strip,[data-theme-custom="true"] .collection-card{background:var(--cms-dark)}
[data-theme-custom="true"] .hero-actions .button,[data-theme-custom="true"] .header-cta{background:var(--cms-accent);border-color:var(--cms-accent);color:var(--cms-accent-text)}
[data-theme-custom="true"] .form-submit{background:var(--cms-dark);border-color:var(--cms-dark);color:white}
[data-button-style="soft"] .button{border-radius:8px}[data-button-style="rounded"] .button{border-radius:32px}
[data-hero-size="large"] .hero{min-height:750px;padding-top:110px;padding-bottom:130px}
[data-content-width="wide"]{--section-gutter:4%}[data-content-width="wide"] .signature-strip{max-width:92%}
[data-category-layout="rows"] .collection-grid{grid-template-columns:1fr}
[data-category-layout="rows"] .collection-card{display:grid;grid-template-columns:35% 65%}
[data-category-layout="rows"] .collection-photo{height:210px;min-height:210px}
.cms-contact-extra{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:22px;color:white}
.cms-contact-extra:empty{display:none}.cms-contact-extra p{white-space:pre-line;color:#ddd;font-size:13px}
.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:15px 0 5px}.contact-email{font-size:14px;line-height:1.65;overflow-wrap:anywhere;max-width:100%;text-decoration:underline;text-underline-offset:4px}.contact-actions [hidden]{display:none}
.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{font-size:13px;line-height:1.6;margin-top:15px;color:#155c37}.form-status:empty{display:none}.form-status[data-error=true]{color:#983829}.form-submit:disabled{cursor:wait;opacity:.65}
.cms-contact-extra strong{font-size:10px;letter-spacing:1.3px}.cms-contact-extra a{font-size:13px;border-bottom:1px solid #ffffff55}
.contact-socials{display:flex;flex-wrap:wrap;gap:10px;width:100%}.contact-socials .contact-social{gap:10px;min-height:44px;min-width:132px;max-width:100%;padding:10px 14px;border:1px solid #ffffff70;background:transparent;color:#fff;font-size:13px}.contact-socials .contact-social:hover{background:#fff;color:#111}.contact-socials .contact-social:focus-visible{outline:2px solid currentColor;outline-offset:3px}.contact-social-icon{width:18px;height:18px;flex-shrink:0}.contact-social .contact-social-arrow{font-size:16px;margin-left:auto}
.cms-portfolio{margin-top:26px}.cms-portfolio-fold{border:1px solid #aaa;background:var(--cms-paper,#eee);margin:15px 0}
.cms-portfolio-fold summary{cursor:pointer;padding:20px 25px;font-size:16px;font-weight:600}.cms-portfolio-fold summary:focus-visible{outline:2px solid currentColor;outline-offset:-4px}
.cms-portfolio-filters{display:flex;flex-wrap:wrap;gap:8px;padding:5px 25px 0}.cms-portfolio-filters button,.cms-portfolio-more{background:transparent;color:inherit;border:1px solid #999;padding:10px 14px;font-size:12px;cursor:pointer;min-height:44px}
.cms-portfolio-filters button[aria-pressed="true"]{background:var(--cms-ink,#111);border-color:var(--cms-ink,#111);color:var(--cms-paper,#eee)}.cms-portfolio-filters button:focus-visible,.cms-portfolio-more:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.cms-portfolio-status{font-size:12px;padding:16px 25px;margin:0}.cms-portfolio-more{display:block;margin:0 auto 25px;font-weight:600}
.cms-record-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:0 25px 25px}.cms-record-card{background:var(--cms-dark,#101010);color:#fff;min-width:0;overflow:hidden}
.cms-project-photo{display:block;position:relative;padding:0;width:100%;border:0;background:#222;color:white;cursor:zoom-in}.cms-project-arrow{position:absolute;right:12px;bottom:12px;font-size:20px;background:#111d;width:36px;height:36px;display:grid;place-items:center;pointer-events:none}.cms-project-photo:focus-visible{outline:3px solid white;outline-offset:-5px}
.cms-project-photo img{display:block;width:100%;height:220px;object-fit:cover}.cms-record-card>div{padding:16px 18px}.cms-record-card h3{font-size:17px;margin:0 0 6px}.cms-record-card small{display:block;color:#ccc;font-size:11px}
.cms-photo-dialog{padding:0;border:1px solid #777;width:min(94vw,1200px);max-height:94svh;background:#101010;color:#fff}.cms-photo-dialog::backdrop{background:#000d}.cms-photo-dialog figure{margin:0}.cms-photo-dialog img{display:block;max-height:72svh;width:100%;object-fit:contain;background:#080808}.cms-photo-dialog figcaption{padding:18px 24px}.cms-photo-dialog h2{font-size:21px;letter-spacing:0;margin:0 0 6px}.cms-photo-note{font-size:12px;color:#bbb}.cms-photo-description{font-size:13px;white-space:pre-line;max-height:110px;overflow:auto;margin-top:12px}.cms-photo-close{position:absolute;z-index:1;right:12px;top:12px;width:44px;height:44px;border:1px solid #fff8;background:#101010;color:white;cursor:pointer;font-size:26px}.cms-photo-close:focus-visible{outline:2px solid white;outline-offset:3px}
.cms-preview-banner{padding:12px 5%;background:#fff5d9;color:#332700;font-size:13px;display:flex;justify-content:space-between;gap:16px}.cms-preview-banner a{font-weight:600;text-decoration:underline}
@media(max-width:800px){.cms-record-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:550px){.cms-record-grid{grid-template-columns:1fr;padding:0 16px 20px}.cms-portfolio-fold summary{padding:18px 16px;font-size:14px}.cms-portfolio-filters{padding:0 16px;gap:6px}.cms-portfolio-filters button{font-size:11px;padding:9px 11px}.cms-portfolio-status{padding:14px 16px}.cms-preview-banner{flex-direction:column;gap:5px}.cms-project-photo img{height:240px}.cms-photo-dialog img{max-height:65svh}.cms-photo-dialog figcaption{padding:16px}}

.contact-actions .contact-viber-help{font-size:12px;color:var(--cms-contactText,#ccc);line-height:1.65;margin:0;max-width:340px}

/* Address, directions, then the contact number share one readable column. */
.contact .contact-details{grid-template-columns:minmax(0,1fr);gap:24px}
.contact-copy .eyebrow{font-size:11px;color:var(--cms-contactText,#b5b5b5)}
.contact-copy>p:not(.eyebrow){font-size:15px;color:var(--cms-contactText,#c0c0c0)}
.contact-details>div>span{font-size:11px;color:var(--cms-contactText,#a9a9a9)}
.contact-details p{font-size:14px;color:var(--cms-contactText,#e3e3e3)}
.contact-details .text-link{font-size:13px;color:var(--cms-contactText,#ffffff)}
.contact .field label{font-size:12px}
.contact .field label small{font-size:11px}
.contact .form-intro{font-size:14px}
.contact .form-note{font-size:12px;line-height:1.75}
.contact .form-submit{font-size:12px}
.contact .form-status{font-size:14px}
.cms-contact-extra strong{font-size:12px;color:var(--cms-contactText,#ffffff)}
.cms-contact-extra p{font-size:14px;color:var(--cms-contactText,#dddddd)}

/* Each optional override is scoped; empty settings retain the existing palette. */
[data-theme-custom="true"] .process{--process-base:var(--cms-paper)}
.process,[data-theme-custom="true"] .process{background-color:var(--cms-processBackground,var(--process-base,#f6f6f6))}
.collections .section-heading h2,.process .section-heading h2{font-family:var(--serif);font-weight:400;color:#545454}
.collections .section-heading h2 em,.process .section-heading h2 em{font-family:inherit;font-style:normal;font-weight:600;color:var(--ink,#111111)}
.contact-icon-definitions{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.steps li{background:var(--cms-processCardBackground,#ffffff);color:var(--cms-processCardText,var(--ink,#111111));border-color:var(--cms-processCardBorder,#d9d9d9);border-top-color:var(--cms-processCardBorder,#111111)}
.steps h3{color:var(--cms-processCardText,var(--ink,#111111))}
.steps p{color:var(--cms-processCardText,#666666)}
.step-number{background:var(--cms-processNumberBackground,#111111);border-color:var(--cms-processNumberBackground,#111111);color:var(--cms-processNumberText,#ffffff)}
.collection-card{--collection-card-base:#161616}
.collection-card:nth-child(2){--collection-card-base:#232323}
.collection-card:nth-child(3){--collection-card-base:#303030}
[data-theme-custom="true"] .collection-card{--collection-card-base:var(--cms-dark)}
.collection-grid .collection-card,[data-theme-custom="true"] .collection-card{background:var(--cms-collectionCardBackground,var(--collection-card-base));color:var(--cms-collectionCardText,#ffffff)}
.collection-body h3,.collection-card .text-link{color:var(--cms-collectionCardText,#ffffff)}
.collection-card p{color:var(--cms-collectionCardText,#cccccc)}
.collection-card .text-link{border-color:var(--cms-collectionCardText,#ffffff55)}
[data-theme-custom="true"] .contact{--contact-base:var(--cms-dark)}
.contact,[data-theme-custom="true"] .contact{background:var(--cms-contactBackground,var(--contact-base,#181818));color:var(--cms-contactText,#ffffff)}
.contact-copy h2,.contact-details .phone,.contact-email{color:var(--cms-contactText,#ffffff)}
.contact-socials .contact-social{background:var(--cms-contactButtonsBackground,transparent);color:var(--cms-contactButtonsText,var(--cms-contactText,#ffffff));border-color:var(--cms-contactButtonsText,var(--cms-contactText,#ffffff70))}
.contact-socials .contact-social>span:not(.contact-social-arrow){font-size:inherit;line-height:1.4}
.contact-socials .contact-social:hover{background:var(--cms-contactButtonsText,var(--cms-contactText,#ffffff));color:var(--cms-contactButtonsBackground,var(--cms-contactBackground,var(--contact-base,#181818)))}
.inquiry-fold,.contact .inquiry-form{background:var(--cms-formBackground,#ffffff);border-color:var(--cms-formBackground,#ffffff);color:var(--cms-formText,#111111)}
.contact .inquiry-form p,.contact .field label small{color:var(--cms-formText,#666666)}
.contact .form-status{color:#155c37}.contact .form-status[data-error=true]{color:#983829}
.contact input,.contact select,.contact textarea{background:var(--cms-formBackground,#ffffff);color:var(--cms-formText,#111111);border-color:var(--cms-formText,#bfbfbf)}
.contact input::placeholder,.contact textarea::placeholder{color:var(--cms-formText,#777777);opacity:.65}
[data-theme-custom="true"] .contact{--form-button-base:var(--cms-dark)}
.contact .form-submit,[data-theme-custom="true"] .contact .form-submit{background:var(--cms-formButtonBackground,var(--form-button-base,#111111));border-color:var(--cms-formButtonBackground,var(--form-button-base,#111111));color:var(--cms-formButtonText,#ffffff)}
[data-theme-custom="true"] .footer{--footer-base:var(--cms-dark)}
.footer,[data-theme-custom="true"] .footer{background:var(--cms-footerBackground,var(--footer-base,#0d0d0d));color:var(--cms-footerText,#ffffff)}
.footer-top p{color:var(--cms-footerText,#bbbbbb)}
.footer-brand small,.footer-bottom,.footer-privacy{color:var(--cms-footerText,#aaaaaa)}
@media(max-width:650px){.contact-copy>p:not(.eyebrow){font-size:14px}.contact-details>div>span{font-size:10px}.contact-details p{font-size:13px}.contact-details .text-link{font-size:12px}}

/* One SVG path defines every arrow; the shaft and head share exact endpoints. */
.site-arrow{display:inline-block;position:relative;width:1em;height:1em;min-width:1em;flex:0 0 auto;vertical-align:middle;color:inherit;line-height:1;transform:rotate(var(--site-arrow-angle,0deg));pointer-events:none}
.site-arrow>svg{display:block;width:100%;height:100%;overflow:visible}
.site-arrow-ne{--site-arrow-angle:-45deg}.site-arrow-n{--site-arrow-angle:-90deg}.site-arrow-nw{--site-arrow-angle:-135deg}.site-arrow-w{--site-arrow-angle:180deg}.site-arrow-sw{--site-arrow-angle:135deg}.site-arrow-s{--site-arrow-angle:90deg}.site-arrow-se{--site-arrow-angle:45deg}
