/* Generated from content.css for the live website: stronger selectors so Elementor/global styles cannot override TIN colours. Edit content.css, not this file. */
:root {--tin-crimson: #961140;
	--tin-crimson-dark: #6d0c2f;
	--tin-purple: #42246e;
	--tin-deep: #2a1745;
	--tin-panel: #3a2260;
	--tin-ink: #1f1529;
	--tin-text: #4b4057;
	--tin-muted: #675b72;
	--tin-line: #e4dce7;
	--tin-tint: #f8f6f9;
	--tin-blush: #f4eaf0;
	--tin-rose: #f6b8cb;
	--tin-white: #fff;
	--tin-radius: 16px;
	--tin-radius-sm: 10px;
	--tin-shadow: 0 1px 2px rgba(42, 23, 69, .06), 0 8px 24px rgba(42, 23, 69, .07);
	--tin-display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
	--tin-body: "Source Sans 3", "Segoe UI", system-ui, -apple-system, sans-serif;
	--tin-gutter: clamp(16px, 4vw, 32px);
	--tin-max: 1200px;}
html body *, html body *::before, html body *::after {box-sizing: border-box;}
html {-webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 96px;}
@media (prefers-reduced-motion: reduce) {
html {scroll-behavior: auto;}
 }
body {margin: 0;
	background: var(--tin-white);
	color: var(--tin-text);
	font-family: var(--tin-body);
	font-size: 17px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;}
html body img, html body svg, html body video, html body iframe {max-width: 100%; height: auto;}
html body a {color: var(--tin-crimson); text-underline-offset: 3px;}
html body a:hover {color: var(--tin-crimson-dark);}
html body h1, html body h2, html body h3, html body h4, html body h5, html body h6 {font-family: var(--tin-display); color: var(--tin-ink); line-height: 1.15; letter-spacing: -.01em; margin: 0 0 .5em;}
html body :focus-visible {outline: 3px solid var(--tin-crimson); outline-offset: 2px;}
html body .tin-icon {flex: none;}
html body .screen-reader-text {border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important;
	width: 1px; word-wrap: normal !important;}
html body .skip-link:focus {clip: auto; clip-path: none; height: auto; width: auto; margin: 0;
	left: 12px; top: 12px; z-index: 100000; padding: 12px 18px;
	background: var(--tin-white); color: var(--tin-deep); border-radius: 8px; box-shadow: var(--tin-shadow);}
html body .tin-container {width: 100%; max-width: calc(var(--tin-max) + 2 * var(--tin-gutter)); margin: 0 auto; padding: 0 var(--tin-gutter);}
html body .tin-topbar, html body .tin-header, html body .tin-main, html body .tin-newsletter, html body .tin-footer {font-family: var(--tin-body);}
html body .tin-footer :where(p, html body li), html body .tin-newsletter :where(p) {color: inherit;}
html body .tin-newsletter h2, html body .tin-footer__title, html body .tin-article__cta h2, html body .tin-postcard__title, html body .tin-empty h2, html body .tin-comments__title, html body .tin-pagehero h1 {font-family: var(--tin-display); text-transform: none; letter-spacing: -.01em;}
html body .tin-newsletter h2, html body .tin-article__cta h2, html body .tin-empty h2, html body .tin-comments__title {color: var(--tin-ink);}
html body .tin-menu a, html body .tin-btn, html body .tin-form label, html body .tin-form input, html body .tin-form textarea {font-family: var(--tin-body);}
html body .tin-btn {display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 48px; padding: 12px 24px; border: 2px solid var(--tin-crimson); border-radius: 999px;
	background: var(--tin-crimson); color: var(--tin-white); font-family: var(--tin-body);
	font-size: 16px; font-weight: 700; line-height: 1.2; text-decoration: none; cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;}
html body .tin-btn:hover, html body .tin-btn:focus-visible {background: var(--tin-crimson-dark); border-color: var(--tin-crimson-dark); color: var(--tin-white);}
html body .tin-topbar {background: var(--tin-deep); color: #e8e0f0; font-size: 14px;}
html body .tin-topbar__inner {display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 42px;}
html body .tin-topbar__contact {display: flex; flex-wrap: wrap; align-items: center; gap: 6px 24px;}
html body .tin-topbar a, html body .tin-topbar__hours {display: inline-flex; align-items: center; gap: 8px; color: #e8e0f0; text-decoration: none;}
html body .tin-topbar a:hover {color: var(--tin-white); text-decoration: underline;}
html body .tin-topbar .tin-icon {width: 16px; height: 16px; color: var(--tin-rose);}
html body .tin-topbar__social {display: flex; gap: 4px;}
html body .tin-social {display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 999px;}
html body .tin-topbar .tin-social:hover {background: rgba(255, 255, 255, .12);}
@media (max-width: 860px) {
html body .tin-topbar__hours {display: none !important;}
 }
@media (max-width: 560px) {
html body .tin-topbar__social {display: none;}
html body .tin-topbar__inner {justify-content: center;}
html body .tin-topbar__contact {justify-content: center; gap: 4px 18px; padding: 6px 0;}

}
html body .tin-header {position: sticky; top: 0; z-index: 50; background: var(--tin-white); border-bottom: 1px solid var(--tin-line);}
html body .admin-bar .tin-header {top: 32px;}
@media (max-width: 782px) {
html body .admin-bar .tin-header {top: 0; position: relative;}
 }
html body .tin-header__inner {display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 84px;}
html body .tin-header__brand {flex: none;}
html body .tin-logo, html body .custom-logo-link {display: block; line-height: 0;}
html body .tin-header .tin-logo img, html body .tin-header .custom-logo {width: auto; height: 58px; max-width: 200px; object-fit: contain;}
html body .tin-nav {display: flex; align-items: center; gap: 20px;}
html body .tin-menu, html body .tin-menu ul {list-style: none; margin: 0; padding: 0;}
html body .tin-menu {display: flex; align-items: center; gap: 2px;}
html body .tin-menu > li {position: relative;}
html body .tin-menu a {display: flex; align-items: center; gap: 6px; padding: 10px 12px; border-radius: 8px;
	color: var(--tin-ink); font-weight: 600; font-size: 16px; text-decoration: none; white-space: nowrap;}
html body .tin-menu a:hover, html body .tin-menu a:focus-visible {color: var(--tin-crimson); background: var(--tin-blush);}
html body .tin-menu .current-menu-item > a, html body .tin-menu .current-menu-ancestor > a, html body .tin-menu .current_page_item > a {color: var(--tin-crimson);}
html body .tin-menu .menu-item-has-children > a::after {content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-2px); opacity: .7;}
html body .tin-menu .sub-menu {position: absolute; top: 100%; left: 0; min-width: 260px; padding: 8px;
	background: var(--tin-white); border: 1px solid var(--tin-line); border-radius: 12px; box-shadow: var(--tin-shadow);
	opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .15s ease, transform .15s ease, visibility .15s;
	z-index: 10;}
html body .tin-menu .sub-menu .sub-menu {position: static; opacity: 1; visibility: inherit; transform: none; min-width: 0; padding: 0 0 4px 14px; border: 0; box-shadow: none;}
html body .tin-menu li:hover > .sub-menu, html body .tin-menu li:focus-within > .sub-menu {opacity: 1; visibility: visible; transform: none;}
html body .tin-menu .sub-menu a {white-space: normal; font-weight: 600; font-size: 15px;}
html body .tin-menu .sub-menu .menu-item-has-children > a::after {display: none;}
html body .tin-menu .sub-menu .sub-menu a {font-weight: 400; color: var(--tin-text);}
html body .tin-header__cta {min-height: 46px; padding: 10px 22px;}
html body .tin-nav-toggle {display: none; align-items: center; justify-content: center; width: 48px; height: 48px;
	border: 1px solid var(--tin-line); border-radius: 12px; background: var(--tin-white); color: var(--tin-deep); cursor: pointer;}
html body .tin-nav-toggle .tin-icon {width: 24px; height: 24px;}
html body .tin-nav-toggle__close {display: none;}
html body .tin-nav-open .tin-nav-toggle__open {display: none;}
html body .tin-nav-open .tin-nav-toggle__close {display: inline-flex;}
@media (max-width: 1080px) {
html body .tin-header__inner {min-height: 72px;}
html body .tin-header .tin-logo img, html body .tin-header .custom-logo {height: 48px;}
html body .tin-nav-toggle {display: inline-flex;}
html body .tin-nav {display: none; position: absolute; left: 0; right: 0; top: 100%;
		flex-direction: column; align-items: stretch; gap: 16px;
		padding: 12px var(--tin-gutter) 24px; background: var(--tin-white);
		border-bottom: 1px solid var(--tin-line); box-shadow: 0 16px 24px rgba(42, 23, 69, .1);
		max-height: calc(100vh - 72px); overflow-y: auto;}
html body .tin-nav-open .tin-nav {display: flex;}
html body .tin-menu {flex-direction: column; align-items: stretch;}
html body .tin-menu a {padding: 13px 12px; font-size: 17px; white-space: normal;}
html body .tin-menu > li + li {border-top: 1px solid var(--tin-line);}
html body .tin-menu .menu-item-has-children > a::after {display: none;}
html body .tin-menu .sub-menu, html body .tin-menu .sub-menu .sub-menu {position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0;
		min-width: 0; padding: 0 0 8px 16px; background: transparent;}
html body .tin-menu .sub-menu a {font-size: 16px; color: var(--tin-text);}
html body .tin-header__cta {width: 100%;}

}
html body .tin-main {display: block;}
html body .tin-newsletter {background: var(--tin-blush); padding: 48px 0;}
html body .tin-newsletter__inner {display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px 48px;}
html body .tin-newsletter__text {flex: 1 1 380px;}
html body .tin-newsletter h2 {font-size: clamp(26px, 3vw, 34px); margin-bottom: 6px;}
html body .tin-newsletter p {margin: 0;}
html body .tin-newsletter__form {flex: 1 1 380px;}
html body .tin-footer {background: var(--tin-deep); color: #ddd3e8; font-size: 16px;}
html body .tin-footer a {color: #ddd3e8; text-decoration: none;}
html body .tin-footer a:hover {color: var(--tin-white); text-decoration: underline;}
html body .tin-footer__grid {display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.4fr; gap: 40px; padding-top: 64px; padding-bottom: 48px;}
html body .tin-footer__about .tin-logo img {width: 210px; height: auto; margin-bottom: 18px;}
html body .tin-footer__about p {margin: 0 0 18px; max-width: 340px;}
html body .tin-footer__social {display: flex; gap: 8px;}
html body .tin-footer .tin-social {border: 1px solid #553a7c;}
html body .tin-footer .tin-social:hover {background: var(--tin-panel); text-decoration: none;}
html body .tin-footer__title {color: var(--tin-white); font-size: 18px; margin-bottom: 16px;}
html body .tin-footer__links, html body .tin-footer__contact {list-style: none; margin: 0; padding: 0; display: grid; gap: 10px;}
html body .tin-footer__contact li {display: flex; gap: 12px; align-items: flex-start;}
html body .tin-footer__contact .tin-icon {width: 18px; height: 18px; margin-top: 4px; color: var(--tin-rose);}
html body .tin-footer__bottom {border-top: 1px solid #3f2a5c; font-size: 14px;}
html body .tin-footer__bottom-inner {display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; padding-top: 20px; padding-bottom: 20px;}
html body .tin-footer__bottom p {margin: 0;}
@media (max-width: 960px) {
html body .tin-footer__grid {grid-template-columns: 1fr 1fr;}
 }
@media (max-width: 560px) {
html body .tin-footer__grid {grid-template-columns: 1fr; gap: 32px; padding-top: 48px;}
 }
html body .tin-postgrid {display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 28px;}
html body .tin-postcard {display: flex; flex-direction: column; background: var(--tin-white); border: 1px solid var(--tin-line); border-radius: var(--tin-radius); overflow: hidden; box-shadow: var(--tin-shadow);}
html body .tin-postcard__media {display: block; aspect-ratio: 16 / 10; background: var(--tin-purple); line-height: 0;}
html body .tin-postcard__media img {width: 100%; height: 100%; object-fit: cover;}
html body .tin-postcard__placeholder {display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; background: var(--tin-purple);}
html body .tin-postcard__placeholder img {width: 46%; height: auto; object-fit: contain; opacity: .9;}
html body .tin-postcard__body {display: flex; flex-direction: column; gap: 10px; padding: 22px 24px 26px; flex: 1;}
html body .tin-postcard__meta {margin: 0; font-size: 14px; color: var(--tin-muted);}
html body .tin-postcard__title {font-size: 21px; margin: 0;}
html body .tin-postcard__title a {color: var(--tin-ink); text-decoration: none;}
html body .tin-postcard__title a:hover {color: var(--tin-crimson);}
html body .tin-postcard__excerpt p {margin: 0;}
html body .tin-postcard__more {margin-top: auto; font-weight: 700; text-decoration: none;}
html body .navigation.pagination {margin-top: 48px;}
html body .nav-links {display: flex; flex-wrap: wrap; gap: 8px; justify-content: center;}
html body .page-numbers {display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 14px; border: 1px solid var(--tin-line); border-radius: 999px; text-decoration: none; color: var(--tin-ink); font-weight: 600;}
html body .page-numbers.current, html body .page-numbers:hover {background: var(--tin-crimson); border-color: var(--tin-crimson); color: var(--tin-white);}
html body .tin-article__meta {color: #ddd3e8; margin: 0;}
html body .tin-article__hero .tin-eyebrow a {color: inherit; text-decoration: none;}
html body .tin-article__image {margin: 0 0 32px;}
html body .tin-article__image img {border-radius: var(--tin-radius); width: 100%;}
html body .tin-article__cta {margin: 48px 0 32px; padding: 28px; border-radius: var(--tin-radius); background: var(--tin-blush);}
html body .tin-article__cta h2 {font-size: 24px; margin: 0 0 6px;}
html body .tin-article__cta p:last-child {margin-bottom: 0;}
html body .post-navigation .nav-links {display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 16px;}
html body .post-navigation a {display: flex; flex-direction: column; gap: 4px; padding: 18px 20px; border: 1px solid var(--tin-line); border-radius: var(--tin-radius-sm); text-decoration: none; height: 100%;}
html body .post-navigation .nav-next a {text-align: right;}
html body .tin-postnav__label {font-size: 14px; color: var(--tin-muted);}
html body .tin-postnav__title {font-weight: 700; color: var(--tin-ink);}
html body .tin-article__tags {font-size: 15px; color: var(--tin-muted);}
html body .tin-comments {margin-top: 48px;}
html body .tin-comments__list {list-style: none; padding: 0;}
html body .tin-comments .comment-body {padding: 16px 0; border-bottom: 1px solid var(--tin-line);}
html body .comment-form input[type="text"], html body .comment-form input[type="email"], html body .comment-form input[type="url"], html body .comment-form textarea {width: 100%;}
html body .tin-search {display: flex; gap: 8px; max-width: 520px;}
html body .tin-search input {flex: 1;}
html body .tin-empty {text-align: center; max-width: 560px; margin: 0 auto;}
html body .tin-empty .tin-search {margin: 0 auto;}
html body input[type="text"], html body input[type="email"], html body input[type="tel"], html body input[type="url"], html body input[type="search"], html body input[type="password"], html body textarea, html body select {width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #cfc4d6; border-radius: 10px;
	background: var(--tin-white); color: var(--tin-ink); font: inherit; font-size: 16px;}
html body textarea {min-height: 140px; resize: vertical;}
html body input:focus, html body textarea:focus, html body select:focus {outline: none; border-color: var(--tin-crimson); box-shadow: 0 0 0 3px rgba(150, 17, 64, .18);}
html body .tin-form {display: grid; gap: 16px;}
html body .tin-form__row {display: grid; grid-template-columns: 1fr 1fr; gap: 16px;}
html body .tin-form__field {margin: 0; display: grid; gap: 6px;}
html body .tin-form__field label {font-weight: 600; color: var(--tin-ink); font-size: 15px;}
html body .tin-form__field label span {color: var(--tin-crimson);}
html body .tin-form__actions {margin: 0;}
html body .tin-form__actions .tin-btn {width: 100%;}
html body .tin-form--inline {grid-template-columns: 1fr auto; gap: 10px;}
html body .tin-form--inline .tin-form__notice {grid-column: 1 / -1;}
html body .tin-form__notice {margin: 0; padding: 12px 16px; border-radius: 10px; font-weight: 600;}
html body .tin-form__notice--success {background: #e5f4ea; color: #1d5b33;}
html body .tin-form__notice--error {background: #fbe7ec; color: #7d0e35;}
html body .tin-hp {position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden;}
@media (max-width: 560px) {
html body .tin-form__row {grid-template-columns: 1fr;}
html body .tin-form--inline {grid-template-columns: 1fr;}
html body .tin-form--inline .tin-btn {width: 100%;}

}
html body .alignleft {float: left; margin: 0 24px 16px 0;}
html body .alignright {float: right; margin: 0 0 16px 24px;}
html body .aligncenter {display: block; margin-left: auto; margin-right: auto;}
html body .wp-caption-text, html body figcaption {font-size: 14px; color: var(--tin-muted);}
html body .sticky, html body .bypostauthor, html body .gallery-caption {display: block;}

