/* Shared finishing system: deliberate surfaces, readable actions, no arrow glyphs. */
:root { --action-radius:8px; --card-radius:16px; }
.button,.actions .button,.contact-actions a,.nav-contact,.menu-toggle {border-radius:var(--action-radius);font-weight:600;letter-spacing:.035em;text-transform:none;font-size:1rem;transition:background-color .18s,border-color .18s,box-shadow .18s;}
.button:focus-visible,.text-link:focus-visible{outline:3px solid #b58a2e;outline-offset:4px;}
.text-link {display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid #102b48;border-radius:var(--action-radius);background:#102b48;color:#fff;font-size:.9375rem;font-weight:600;line-height:1.4;text-align:center;gap:0;text-decoration:none;transition:background-color .18s,box-shadow .18s;}
.text-link:hover{background:#23496f;color:#fff;border-color:#23496f;box-shadow:0 4px 12px #102b4818;}
.section-heading .text-link{flex-shrink:0;margin-bottom:3px;}
.product-grid{align-items:stretch;gap:28px;}
.product{display:flex;flex-direction:column;padding:12px 12px 22px;background:#fff;border:1px solid #e5e4de;border-radius:var(--card-radius);box-shadow:0 6px 24px #102b4805;overflow:hidden;transition:box-shadow .2s,border-color .2s;}
.product:hover{border-color:#c9b58c;box-shadow:0 10px 28px #102b4810;}
.product-image{border-radius:10px;}
.product-image img{transition:none;}
.product-image:hover img{transform:none;}
.product-meta{margin:22px 12px 12px;font-size:.75rem;letter-spacing:.1em;}
.product h3{margin:0 12px 14px;font-size:1.65rem;line-height:1.2;}
.product>p{margin:0 12px 24px;font-size:1rem;line-height:1.7;max-width:none;flex:1;}
.product>.text-link{margin:0 12px;min-height:50px;font-size:.9375rem;}
.story-split .text-link{background:#b58a2e;border-color:#b58a2e;color:#fff;margin-top:10px;}
.story-split .text-link:hover{background:#916b20;border-color:#916b20;}
.image-caption{padding:14px 18px;bottom:22px;left:22px;right:22px;border:1px solid #ffffff30;border-radius:10px;background:#102b48eb;gap:15px;}
.image-caption a{width:auto;height:auto;min-height:44px;padding:10px 15px;border:0;border-radius:6px;background:#b58a2e;color:#fff;font:600 .875rem/1.4 Arial,sans-serif;letter-spacing:0;white-space:nowrap;}
.image-caption span{font-size:.75rem;line-height:1.5;}
.collection-inviting{border-radius:var(--card-radius);}
.catalog-tools input,.catalog-tools select{border-radius:8px;min-height:50px;}
.contact-details .text-link{margin-top:16px;font-size:.9375rem;}
.live-map .text-link{font-size:.9375rem;}
.live-map iframe{border-radius:12px;}
.order-panel{padding:28px;background:#f0ece3;border:1px solid #ded6c6;border-radius:14px;}
.order-panel input{border-radius:6px;}
@media(max-width:1000px){.product-grid{gap:18px;}.product h3{font-size:1.45rem;}.product h3,.product>p,.product-meta{margin-left:8px;margin-right:8px;}.product>.text-link{margin-inline:8px;}}
@media(max-width:700px){.product-grid{grid-template-columns:1fr;gap:26px;}.product{padding:12px 12px 24px;}.product h3{font-size:1.75rem;}.product h3,.product>p,.product-meta{margin-left:12px;margin-right:12px;}.product>.text-link{margin-inline:12px;min-height:54px;font-size:1rem;}.product-image img{max-height:430px;}.section-heading{gap:20px;}.section-heading .text-link{min-height:50px;}.image-caption{left:12px;right:12px;bottom:12px;padding:9px 12px;}.image-caption span{font-size:.7rem;letter-spacing:.1em;}.image-caption a{min-height:42px;font-size:.8125rem;padding:10px 12px;}nav a,nav a[aria-current]{border-radius:8px;}.order-panel{padding:22px;}.contact-actions a{font-size:1rem;}.collection-inviting .button{font-size:.9375rem;letter-spacing:.025em;}}
@media(prefers-reduced-motion:reduce){.product,.text-link,.button{transition:none;}}
