/*
Theme Name: The Wondering Wanderer
Theme URI: https://thewonderingwanderer.com
Author: Friends of Emily
Description: Digital postcards from a solo traveler and hiker. Every post is a postcard with a postmark; trips are categories; posts arrive automatically from Substack and photos from Instagram. Built as a block theme so everything can be changed in Appearance → Editor.
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
Version: 1.5.3
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: the-wondering-wanderer
Tags: blog, full-site-editing, block-patterns, block-styles, custom-logo, featured-images, one-column, three-columns
*/

:root {
	--tww-paper: #efe9df;
	--tww-card: #fbf8f2;
	--tww-ink: #1d1b18;
	--tww-body: #2a2622;
	--tww-soft: #4a443d;
	--tww-muted: #6b6258;
	--tww-mark: #95503e;
	--tww-line: rgba(29, 27, 24, .14);
	--tww-mono: 'DM Mono', ui-monospace, Menlo, monospace;
	--tww-pad: clamp(20px, 4.5vw, 56px);
	--tww-shadow: 0 14px 34px rgba(60, 40, 20, .16);
	--tww-shadow-sm: 0 8px 20px rgba(60, 40, 20, .12);
	--tww-perf: radial-gradient(circle, transparent 3px, #fff 3.5px) -5px -5px / 10px 10px;
	--tww-perf-sm: radial-gradient(circle, transparent 2.5px, #fff 3px) -4px -4px / 8px 8px;
}

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
img { max-width: 100%; height: auto; }
p, h1, h2, h3 { text-wrap: pretty; }
mark { background: #ecd9bf; color: inherit; padding: 0 2px; }

/* ---------- Small shared pieces ---------- */
.tww-label, .tww-label a,
.tww-label.wp-block-post-date, .tww-label.wp-block-post-terms, .tww-label.wp-block-query-title {
	font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--tww-muted); line-height: 1.5;
}
.tww-italic { font-style: italic; }
.tww-signature { font-style: italic; font-size: 26px; margin: 0; }
.tww-empty { font-style: italic; color: var(--tww-muted); }
.tww-links { display: flex; flex-wrap: wrap; gap: 8px 32px; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }
.tww-links a, .tww-cta a, a.tww-cta, .tww-cta.wp-block-read-more { border-bottom: 1px solid currentColor; padding-bottom: 3px; text-decoration: none; }
.tww-rule { border-bottom: 1px solid var(--tww-ink); padding-bottom: 14px; margin: 0; }
.tww-section { max-width: 1168px; margin-inline: auto; padding-inline: var(--tww-pad); box-sizing: content-box; }
.tww-narrow { max-width: 880px; margin-inline: auto; padding-inline: var(--tww-pad); box-sizing: content-box; }
.tww-main > * { margin-block-start: 0; }
.tww-main > * + * { margin-block-start: 104px; }
.tww-main { padding-bottom: 104px; }
.tww-section-head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; border-bottom: 1px solid var(--tww-ink); padding-bottom: 14px; margin-bottom: 36px; }
.tww-section-head > * { margin: 0 !important; }
.tww-section-head h2 { font-size: 34px; }
.tww-page-head { padding-top: 72px; display: flex; flex-direction: column; gap: 28px; }
.tww-page-head > * { margin: 0 !important; }
.tww-page-intro { padding-top: 72px; margin-bottom: 40px; display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; flex-wrap: wrap; }
.tww-page-intro > * { margin: 0 !important; }
.tww-page-intro h1 { text-wrap: balance; }
.tww-page-intro p { max-width: none; white-space: nowrap; font-size: 19px; line-height: 1.5; color: var(--tww-soft); }
.tww-page-content > * + * { margin-block-start: 0; }

/* ---------- Header & footer ---------- */
.tww-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px var(--tww-pad); border-bottom: 1px solid var(--tww-line); }
.tww-header > * { margin: 0 !important; }
.tww-header .wp-block-site-logo img { height: 60px; width: auto; }
.tww-nav { font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--tww-soft); }
.tww-nav .wp-block-navigation__container { gap: 10px 30px; }
.tww-nav a:hover { color: var(--tww-ink); }
/* Subscribe = dark-red stamp. Doubled-class selector beats core's .wp-block-navigation-item__content.wp-block-navigation-item__content { color: inherit }. */
.tww-nav a.wp-block-navigation-item__content.wp-block-navigation-item__content[href*="/subscribe"],
.tww-nav a.wp-block-navigation-item__content[href*="/subscribe"] .wp-block-navigation-item__label {
	color: #fff;
}
.tww-nav a.wp-block-navigation-item__content[href*="/subscribe"] {
	background: var(--tww-mark);
	padding: 6px 15px;
	border: 1.5px dashed rgba(251, 248, 242, .6);
	border-radius: 2px;
	text-decoration: none;
	transition: background .15s ease, transform .15s ease;
}
.tww-nav a.wp-block-navigation-item__content[href*="/subscribe"]:hover,
.tww-nav a.wp-block-navigation-item__content[href*="/subscribe"]:focus-visible {
	background: #7d4536;
	transform: rotate(-2deg);
}
.tww-nav .is-menu-open a.wp-block-navigation-item__content[href*="/subscribe"] {
	display: inline-flex;
	width: auto;
	align-self: flex-start;
	margin: 14px 0;
	min-height: 0;
	font-family: var(--tww-mono);
	font-size: 15px;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.tww-nav .is-menu-open .wp-block-navigation-item:has(> a[href*="/subscribe"]) { border-bottom: 0; }
/* Open phone menu: postcard paper, left-aligned list, Subscribe as a proper stamp button (matches the approved M3 mock). */
.tww-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--tww-card) !important; color: var(--tww-ink) !important; padding: 20px 24px 44px !important; }
.tww-nav .is-menu-open .wp-block-navigation__responsive-close { max-width: none; }
.tww-nav .is-menu-open .wp-block-navigation__responsive-dialog { display: flex; flex-direction: column; }
.tww-nav .is-menu-open .wp-block-navigation__responsive-container-close { position: static; align-self: flex-end; }
.tww-nav .is-menu-open .wp-block-navigation__responsive-container-content { align-items: stretch !important; padding-top: 28px !important; }
.tww-nav .is-menu-open .wp-block-navigation__container { align-items: stretch !important; justify-content: flex-start !important; }
.tww-nav .is-menu-open .wp-block-navigation-item { justify-content: flex-start !important; align-items: center !important; text-align: left; }
.tww-nav .is-menu-open .wp-block-navigation-item__content { width: 100%; padding: 12px 0 !important; }
.tww-nav .is-menu-open .wp-block-navigation-item:has(> a[href*="/subscribe"]) { min-height: 0; margin-top: 24px; }
.tww-nav .is-menu-open a.wp-block-navigation-item__content.wp-block-navigation-item__content[href*="/subscribe"] {
	width: auto !important;
	height: 48px;
	padding: 0 20px !important;
	margin: 0;
	display: inline-flex;
	align-items: center;
	box-sizing: border-box;
	font-family: var(--tww-mono);
	font-size: 14px;
	line-height: 1;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #fff !important;
	background: var(--tww-mark);
	border: 1.5px dashed rgba(251, 248, 242, .7);
	outline: 1.5px solid var(--tww-mark);
	border-radius: 2px;
}
.tww-header--home { flex-direction: column; justify-content: center; gap: 20px; padding-top: 40px; border-bottom: 0; }
.tww-header--home .wp-block-site-logo img { height: 96px; }
.tww-intro { max-width: 620px; text-align: center; font-size: 21px; line-height: 1.5; font-style: italic; color: #3a352f; }
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close { font-family: var(--tww-mono); font-size: 12px; line-height: 1; letter-spacing: .1em; text-transform: uppercase; height: 44px; padding: 0 14px; box-sizing: border-box; border: 1.5px solid currentColor; border-radius: 2px; display: inline-flex; align-items: center; }
.tww-nav a.wp-block-navigation-item__content[href*="/subscribe"] { outline: 1.5px solid var(--tww-mark); line-height: 1; }
.tww-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--tww-card); color: var(--tww-ink); padding: 44px 24px; }
.tww-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 48px; }
.tww-nav .is-menu-open .wp-block-navigation__container { gap: 0; width: 100%; }
.tww-nav .is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--tww-line); font-family: Newsreader, Georgia, serif; font-size: 34px; letter-spacing: 0; text-transform: none; min-height: 64px; display: flex; align-items: center; }

.tww-footer { display: flex; justify-content: center; flex-wrap: wrap; gap: 4px 28px; padding: 28px var(--tww-pad) 36px; border-top: 1px solid var(--tww-line); font-family: var(--tww-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--tww-muted); }
.tww-footer > * { margin: 0 !important; }

/* ---------- Postcard pieces ---------- */
.postcard-front { background: #fff; padding: 14px; box-shadow: var(--tww-shadow); transform: rotate(-2deg); position: relative; z-index: 1; margin: 0; }
/* Emily shoots portrait: every postcard photo is cropped to a fixed landscape frame so cards line up. Faces sit high, so bias the crop upward. */
.postcard-front img { display: block; width: 100% !important; aspect-ratio: 3 / 2 !important; height: auto !important; max-height: none; object-fit: cover !important; object-position: 50% 35%; }
.postmark { position: absolute; z-index: 3; width: 88px; height: 88px; border-radius: 50%; border: 1.5px solid var(--tww-mark); color: var(--tww-mark); background: rgba(251, 248, 242, .82); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; padding: 8px; box-sizing: border-box; text-align: center; transform: rotate(-12deg); font-family: var(--tww-mono); font-size: 10px; line-height: 1.2; text-transform: uppercase; overflow: hidden; pointer-events: none; }
.postmark > * { margin: 0 !important; }
.postmark a { color: inherit; text-decoration: none; }
.postmark .wp-block-post-terms { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.postmark .wp-block-post-date { font-size: 13px; font-weight: 500; }
.postmark .postmark__year.wp-block-post-date { font-size: 10px; font-weight: 400; }

/* Latest postcard (home) */
.tww-latest { max-width: 1168px; margin: 40px auto 0; padding-inline: calc(var(--tww-pad) + 16px); box-sizing: content-box; }
.tww-latest .wp-block-post-template { margin: 0; padding: 0; list-style: none; }
.tww-latest .wp-block-post { display: flex; flex-direction: column; align-items: center; }
.postcard-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; width: 100%; }
.postcard-hero > * { margin: 0 !important; }
.postcard-back { position: relative; background: var(--tww-card); aspect-ratio: 3 / 2; box-shadow: 0 14px 34px rgba(60, 40, 20, .14); transform: rotate(1.5deg) translateX(-24px); padding: 28px 32px; box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 24px; }
.postcard-back > * { margin: 0 !important; }
.postcard-back__message { display: flex; flex-direction: column; justify-content: center; gap: 12px; }
.postcard-back__message > * { margin: 0 !important; }
.postcard-back .wp-block-post-title { font-size: clamp(28px, 3.2vw, 40px); line-height: 1.05; }
.postcard-back .wp-block-post-excerpt, .postcard-back .wp-block-post-excerpt p { font-size: 17px; line-height: 1.5; font-style: italic; color: #3a352f; margin: 0; }
.postcard-back .tww-signature { font-size: 19px; }
.postcard-back__address { position: relative; border-left: 1px solid var(--tww-line); padding-left: 24px; display: flex; flex-direction: column; justify-content: flex-end; }
.postcard-back__address > * { margin: 0 !important; }
.tww-stamp-mini { position: absolute !important; top: 0; right: 0; width: 84px; padding: 6px; background: var(--tww-perf-sm); filter: drop-shadow(0 1px 1px rgba(0, 0, 0, .15)); }
.tww-stamp-mini img { display: block; width: 100%; aspect-ratio: 4 / 5; height: auto !important; object-fit: cover; }
.postcard-back__address .postmark { top: 52px; right: 62px; }
.postcard-lines { font-style: italic; font-size: 15px; color: var(--tww-soft); line-height: 34px; height: 102px; background: linear-gradient(transparent 33px, rgba(29, 27, 24, .27) 33px, rgba(29, 27, 24, .27) 34px, transparent 34px) 0 0 / 100% 34px; }
.tww-latest .wp-block-read-more { margin-top: 36px; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }

/* What is this? */
.tww-what { border-top: 1px solid var(--tww-ink); border-bottom: 1px solid var(--tww-line); padding: 56px 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 64px; }
.tww-what > *, .tww-what__title > *, .tww-what__body > * { margin: 0 !important; }
.tww-what__title { display: flex; flex-direction: column; gap: 14px; }
.tww-what__title h2 { font-size: 40px; }
.tww-what__photo.postcard-front { width: 300px; max-width: 100%; margin-top: 12px !important; transform: rotate(-2.5deg); }
.tww-what__photo.postcard-front img { aspect-ratio: 4 / 5 !important; object-position: 50% 30%; }
.tww-what__body { display: flex; flex-direction: column; gap: 18px; font-size: 21px; line-height: 1.6; color: var(--tww-body); }
.tww-what__body .tww-links { margin-top: 6px !important; }

/* Trips (postcards from…) */
.tww-trips { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 40px; }
.tww-trip { display: flex; flex-direction: column; gap: 14px; text-decoration: none; }
.tww-trip:hover .tww-trip__name { text-decoration: underline; }
.tww-trip__photo { display: block; background: #fff; padding: 10px; box-shadow: var(--tww-shadow-sm); transform: rotate(-1deg); }
.tww-trip:nth-child(3n+2) .tww-trip__photo { transform: rotate(.8deg); }
.tww-trip:nth-child(3n) .tww-trip__photo { transform: rotate(-.6deg); }
.tww-trip__photo img, .tww-trip__blank { display: block; width: 100%; aspect-ratio: 3 / 2; height: auto; object-fit: cover; }
.tww-trip__blank { background: #e7dfd1; }
.tww-trip__meta { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.tww-trip__name { font-size: 26px; line-height: 1.15; }
.tww-trip__year { font-family: var(--tww-mono); font-size: 12px; color: var(--tww-muted); }
.tww-also { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 28px; margin: 40px 0 0; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--tww-soft); }
.tww-mobile-only { display: none; }

/* Stamps */
.tww-stamps { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; }
.tww-stamp { display: block; padding: 8px; background: var(--tww-perf); filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .12)); transform: rotate(-2deg); }
.tww-stamp:nth-child(6n+2) { transform: rotate(1.5deg); }
.tww-stamp:nth-child(6n+3) { transform: rotate(-.5deg); }
.tww-stamp:nth-child(6n+4) { transform: rotate(2deg); }
.tww-stamp:nth-child(6n+5) { transform: rotate(-1.5deg); }
.tww-stamp:nth-child(6n) { transform: rotate(1deg); }
.tww-stamp img { display: block; width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; }
.tww-stamps--instagram #sbi_images { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; padding: 0 !important; width: 100% !important; }
.tww-stamps--instagram .sbi_item { width: auto !important; padding: 8px !important; background: var(--tww-perf); filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .12)); transform: rotate(-1.5deg); }
.tww-stamps--instagram .sbi_item:nth-child(even) { transform: rotate(1.2deg); }
.tww-stamps--instagram #sb_instagram { padding: 0 !important; }

/* Subscribe */
.subscribe-card { background: var(--tww-card); box-shadow: 0 10px 28px rgba(60, 40, 20, .1); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; padding: 48px 56px; }
.subscribe-card > *, .subscribe-card__message > *, .subscribe-card__form > * { margin: 0 !important; }
.subscribe-card__message { display: flex; flex-direction: column; justify-content: center; gap: 14px; }
.subscribe-card__message h2 { font-size: 40px; font-style: italic; }
.subscribe-card__message p { font-size: 18px; line-height: 1.5; color: var(--tww-soft); }
.subscribe-card__form { border-left: 1px solid var(--tww-line); padding-left: 48px; display: flex; flex-direction: column; justify-content: space-between; gap: 28px; }
/* Postage stamp: perforated white edge, postmark-red face, "FREE POST". */
.subscribe-card__form::before { content: "FREE\A POST"; white-space: pre; align-self: flex-end; width: 64px; height: 78px; box-sizing: border-box; border: 6px solid transparent; background: linear-gradient(var(--tww-mark), var(--tww-mark)) padding-box, radial-gradient(circle, transparent 2.5px, #fff 3px) -10px -10px / 8px 8px border-box; filter: drop-shadow(0 1px 2px rgba(60, 40, 20, .2)); transform: rotate(4deg); display: flex; align-items: center; justify-content: center; text-align: center; color: #fff; font-family: var(--tww-mono); font-size: 11px; font-weight: 500; line-height: 1.25; letter-spacing: .1em; }
.tww-subscribe-form { display: flex; align-items: stretch; border-bottom: 1px solid var(--tww-ink); }
.tww-subscribe-form input { flex: 1; min-width: 0; min-height: 48px; background: transparent; border: 0; border-radius: 0; padding: 0; font-family: Newsreader, Georgia, serif; font-size: 21px; font-style: italic; color: var(--tww-ink); outline: none; }
.tww-subscribe-form input::placeholder { color: inherit; opacity: .5; }
.tww-subscribe-form button { background: transparent; border: 0; padding: 0 0 0 16px; cursor: pointer; white-space: nowrap; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--tww-mark); }
.tww-subscribe-form button:hover { text-decoration: none; }
/* Desktop line form: the button is a filled red stamp, same as Subscribe in the menu. */
.tww-subscribe-form--line { border-bottom: 0; gap: 12px; }
.tww-subscribe-form--line input { border-bottom: 1px solid var(--tww-ink); }
.tww-subscribe-form--line button { background: var(--tww-mark); color: #fff; padding: 0 22px; min-height: 48px; border: 1.5px dashed rgba(251, 248, 242, .6); outline: 1.5px solid var(--tww-mark); border-radius: 2px; transition: background .15s ease, transform .15s ease; }
.tww-subscribe-form--line button:hover, .tww-subscribe-form--line button:focus-visible { background: #7d4536; outline-color: #7d4536; transform: rotate(-2deg); }
.tww-subscribe-form--page { flex-direction: column; border: 0; gap: 12px; }
.tww-subscribe-form__label { font-family: var(--tww-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--tww-muted); }
.tww-subscribe-form--page input { border-bottom: 1px solid var(--tww-ink); }
.tww-subscribe-form--page button { align-self: flex-start; margin-top: 12px; background: var(--tww-mark); color: #fff; padding: 14px 22px; }
.tww-subscribe-form--page button:hover { background: #7d4536; text-decoration: none; }
.subscribe-strip { background: var(--tww-card); border-top: 1px solid var(--tww-line); padding: 48px var(--tww-pad); display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 20px 40px; }
.subscribe-strip > * { margin: 0 !important; }
.subscribe-strip p { font-size: 28px; line-height: 1.2; }
.subscribe-strip .tww-subscribe-form { width: min(420px, 100%); }
.tww-main > .subscribe-strip { margin-bottom: -104px; }
.tww-subscribe-page { padding-top: 72px; display: flex; flex-direction: column; align-items: center; gap: 48px; }
.tww-subscribe-page > * { margin: 0 !important; }
.subscribe-card--big { width: 100%; max-width: 1000px; box-sizing: border-box; transform: rotate(-.6deg); padding: 48px 56px; box-shadow: 0 18px 44px rgba(60, 40, 20, .16); }
.subscribe-card--big .subscribe-card__message { justify-content: flex-start; gap: 18px; }
.subscribe-card--big .subscribe-card__message p { font-size: 24px; line-height: 1.5; color: var(--tww-body); }
.subscribe-card--big .tww-signature { font-size: 28px; margin-top: 12px !important; }

/* Single postcard */
.single-head { text-align: center; padding: 64px var(--tww-pad) 0; display: flex; flex-direction: column; align-items: center; gap: 16px; }
.single-head > * { margin: 0 !important; }
.single-head .wp-block-post-title { font-size: clamp(46px, 7vw, 84px); }
.tww-main > .single-photo { margin-block-start: 48px; }
.single-photo { position: relative; max-width: 848px; margin-inline: auto; padding-inline: calc(var(--tww-pad) + 8px); box-sizing: content-box; }
.single-photo > * { margin: 0 !important; }
.single-photo .postcard-front { transform: rotate(-.8deg); padding: 16px; }
.single-photo .postcard-front img { aspect-ratio: 4 / 3 !important; max-height: 78vh; }
.single-photo .postmark { top: -28px; right: calc(var(--tww-pad) - 16px); width: 104px; height: 104px; font-size: 11px; }
.single-photo .postmark .wp-block-post-date { font-size: 15px; }
.tww-main > .tww-post-content { margin-block-start: 72px; }
.tww-post-content { padding-inline: var(--tww-pad); font-size: 21px; line-height: 1.7; color: var(--tww-body); }
.tww-post-content h2 { font-size: 34px; line-height: 1.15; margin-top: 1.6em; }
.tww-post-content h3 { font-size: 26px; margin-top: 1.4em; }
.tww-post-content blockquote { margin-left: 0; margin-right: 0; padding-left: 28px; border-left: 1px solid var(--tww-ink); font-style: normal; }
.tww-post-content figure { margin-top: 40px; margin-bottom: 40px; }
.tww-post-content figure.wp-block-image img { max-height: 85vh; width: auto; margin-inline: auto; display: block; }
.tww-post-content > .alignwide { max-width: min(1000px, calc(100vw - 2 * var(--tww-pad))); margin-inline: auto; }
.tww-post-content > .alignfull { max-width: none; margin-inline: calc(-1 * var(--tww-pad)); }
.tww-post-content > .alignfull img { border-left: 0; border-right: 0; box-shadow: none; }
.tww-empty-state { display: flex; flex-direction: column; gap: 14px; padding: 32px 0; border-top: 1px solid var(--tww-line); }
.tww-empty-state p { margin: 0; }
.tww-post-content figure img, .is-style-postcard img { background: #fff; border: 12px solid #fff; box-shadow: 0 10px 26px rgba(60, 40, 20, .12); box-sizing: border-box; }
.tww-post-content figcaption, .tww-post-content .wp-element-caption { font-family: var(--tww-mono); font-size: 13px; line-height: 1.5; color: var(--tww-muted); text-align: center; margin-top: 12px; }
.tww-post-content a { text-decoration: underline; text-underline-offset: 3px; }
.tww-post-content hr { border: 0; border-top: 1px solid var(--tww-line); margin: 48px auto; }
.is-style-stamp img { padding: 8px; background: var(--tww-perf); filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .12)); }
.wp-block-gallery.is-style-stamps .wp-block-image img { padding: 8px; background: var(--tww-perf); filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .12)); }
.tww-main > .tww-signoff { margin-block-start: 40px; }
.tww-signoff { width: min(680px, calc(100% - 2 * var(--tww-pad))); margin-inline: auto; padding-top: 24px; border-top: 1px solid var(--tww-line); display: flex; flex-direction: column; gap: 4px; }
.tww-signoff > * { margin: 0 !important; }
.tww-ps { font-style: italic; font-size: 18px; color: var(--tww-soft); }
.tww-main > .tww-postnav { margin-block-start: 72px; }
.tww-postnav { max-width: 848px; margin-inline: auto; padding-inline: var(--tww-pad); box-sizing: content-box; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.tww-postnav > * { margin: 0 !important; }
.tww-postnav .wp-block-post-navigation-link { background: var(--tww-card); padding: 18px 22px; box-shadow: 0 8px 20px rgba(60, 40, 20, .08); }
.tww-postnav .post-navigation-link-next { grid-column: 2; text-align: right; }
.tww-postnav .wp-block-post-navigation-link a { display: flex; flex-direction: column; gap: 6px; font-size: 22px; line-height: 1.2; }
.tww-postnav .tww-postnav--empty { display: flex; flex-direction: column; gap: 6px; background: transparent; box-shadow: none; border: 1.5px dashed rgba(29, 27, 24, .25); }
.tww-postnav .tww-postnav__placeholder { font-size: 22px; line-height: 1.2; font-style: italic; color: var(--tww-soft); }
.tww-postnav .wp-block-post-navigation-link:empty { display: none; }
.tww-postnav .post-navigation-link__label { font-family: var(--tww-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--tww-muted); }

/* All postcards grid */
.tww-chips { display: flex; flex-wrap: wrap; gap: 10px; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.tww-chips a { border: 1px solid rgba(29, 27, 24, .35); padding: 8px 15px; min-height: 44px; box-sizing: border-box; display: inline-flex; align-items: center; text-decoration: none; }
.tww-chips a[aria-current] { background: var(--tww-ink); color: var(--tww-paper); border-color: var(--tww-ink); }
.tww-filters { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 16px 20px; margin: 0 0 40px; }
.tww-filters__field { display: flex; flex-direction: column; gap: 6px; min-width: 200px; }
.tww-filters__label { font-family: var(--tww-mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--tww-muted); }
.tww-filters select { appearance: none; -webkit-appearance: none; min-height: 48px; padding: 0 44px 0 16px; background: var(--tww-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231d1b18' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 16px center; border: 1px solid var(--tww-ink); border-radius: 2px; font-family: var(--tww-mono); font-size: 14px; letter-spacing: .06em; text-transform: uppercase; color: var(--tww-ink); cursor: pointer; }
.tww-filters select:focus-visible { outline: 2px solid var(--tww-mark); outline-offset: 2px; }
.tww-filters__apply { min-height: 48px; padding: 0 20px; background: var(--tww-ink); color: var(--tww-card); border: 0; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; }
.tww-filters__clear { min-height: 48px; display: inline-flex; align-items: center; font-family: var(--tww-mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; text-decoration: underline; text-underline-offset: 4px; }
.tww-page-head .tww-filters { margin-bottom: 0; }
.tww-main > .tww-cards { margin-block-start: 48px; }
.tww-cards .wp-block-post-template { gap: 56px 40px; padding: 16px 0 0; margin: 0; }
.postcard-card { position: relative; display: flex; flex-direction: column; gap: 14px; }
.postcard-card > * { margin: 0 !important; }
.postcard-card .postcard-front { padding: 10px; box-shadow: var(--tww-shadow-sm); transform: rotate(-1deg); }
.wp-block-post:nth-child(3n+2) .postcard-card .postcard-front { transform: rotate(.8deg); }
.wp-block-post:nth-child(3n) .postcard-card .postcard-front { transform: rotate(-.5deg); }
.postcard-card .postmark { top: -14px; right: -6px; width: 64px; height: 64px; font-size: 9px; padding: 6px; }
.postcard-card .postmark .wp-block-post-date { font-size: 11px; }
.postcard-card .wp-block-post-title { font-size: 26px; line-height: 1.15; }
.postcard-card .wp-block-post-excerpt, .postcard-card .wp-block-post-excerpt p { font-size: 17px; line-height: 1.5; color: var(--tww-soft); font-style: italic; margin: 0; }
.tww-pagination { margin-top: 72px; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }

/* Trip page */
.tww-trip-head { padding-top: 72px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.tww-trip-head > *, .tww-trip-head__text > * { margin: 0 !important; }
.tww-trip-head__text { display: flex; flex-direction: column; gap: 20px; }
.tww-trip-head .wp-block-query-title { font-size: clamp(46px, 7vw, 84px); line-height: 1.05; }
.tww-trip-head .wp-block-term-description { font-size: 22px; line-height: 1.55; color: #3a352f; }
.tww-trip-head .wp-block-term-description p { margin: 0; }
.tww-stack { position: relative; height: 440px; }
.tww-stack__card { position: absolute; width: 46%; background: #fff; padding: 10px; box-shadow: var(--tww-shadow); }
.tww-stack__card img { display: block; width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; }
.tww-stack__card:nth-child(1) { left: 4%; top: 40px; transform: rotate(-6deg); }
.tww-stack__card:nth-child(2) { left: 30%; top: 0; transform: rotate(3deg); z-index: 1; }
.tww-stack__card:nth-child(3) { right: 0; top: 90px; width: 40%; transform: rotate(-2deg); z-index: 2; }
.tww-list .wp-block-post-template { counter-reset: tww; margin: 0; padding: 0; list-style: none; }
.tww-list .wp-block-post { counter-increment: tww; display: grid; grid-template-columns: 56px 140px minmax(0, 1fr) auto; gap: 28px; align-items: center; padding: 20px 0; border-bottom: 1px solid var(--tww-line); margin: 0; }
.tww-list .wp-block-post::before { content: counter(tww, decimal-leading-zero); font-family: var(--tww-mono); font-size: 14px; }
.tww-list .wp-block-post > * { margin: 0 !important; }
.tww-list__img img { display: block; width: 140px; height: 96px !important; object-fit: cover; border: 6px solid #fff; box-sizing: border-box; }
.tww-list .wp-block-post-title { font-size: 28px; line-height: 1.2; }

/* Search */
.tww-search-head { padding-top: 80px; display: flex; flex-direction: column; gap: 20px; }
.tww-search-head > * { margin: 0 !important; }
.tww-searchbar .wp-block-search__label { font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--tww-muted); font-weight: 400; margin-bottom: 12px; }
.tww-searchbar .wp-block-search__inside-wrapper { border: 0; border-bottom: 2px solid var(--tww-ink); padding: 0; }
.tww-searchbar .wp-block-search__input { background: transparent; border: 0; padding: 8px 0; font-family: Newsreader, Georgia, serif; font-size: clamp(32px, 5vw, 56px); font-style: italic; color: var(--tww-ink); outline: none; }
.tww-searchbar .wp-block-search__button { background: transparent; color: var(--tww-ink); border: 0; margin: 0; padding: 0 0 0 16px; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }
.tww-main > .tww-results { margin-block-start: 40px; }
.tww-results .wp-block-post-template { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--tww-line); }
.tww-results .wp-block-post { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 32px; padding: 28px 0; border-bottom: 1px solid var(--tww-line); margin: 0; }
.tww-results .wp-block-post > * { margin: 0 !important; }
.tww-results__img img { display: block; width: 160px; height: 110px !important; object-fit: cover; border: 6px solid #fff; box-sizing: border-box; }
.tww-results__text { display: flex; flex-direction: column; gap: 8px; }
.tww-results__text > * { margin: 0 !important; }
.tww-results .wp-block-post-title { font-size: 28px; line-height: 1.15; }
.tww-results .wp-block-post-excerpt, .tww-results .wp-block-post-excerpt p { font-size: 18px; line-height: 1.55; color: var(--tww-soft); margin: 0; }
.tww-404 { padding-top: 104px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 20px; }
.tww-404 > * { margin: 0 !important; }
.tww-404 .tww-searchbar { width: min(560px, 100%); }

/* About */
.tww-about { padding-top: 88px; display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: 80px; align-items: start; }
.tww-about > * { margin: 0 !important; }
.tww-polaroid { background: #fff; padding: 14px 14px 0; box-shadow: var(--tww-shadow); transform: rotate(-2.5deg); }
.tww-polaroid img { display: block; width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; }
.tww-polaroid figcaption, .tww-polaroid .wp-element-caption { font-family: Newsreader, Georgia, serif; font-style: italic; font-size: 22px; color: var(--tww-ink); text-align: left; margin: 0; padding: 12px 6px 16px; }
.tww-about__text { display: flex; flex-direction: column; gap: 24px; padding-top: 16px; font-size: 22px; line-height: 1.65; color: var(--tww-body); }
.tww-about__text > * { margin: 0 !important; }
.tww-about__text .tww-links { padding-top: 24px; border-top: 1px solid var(--tww-line); }

/* Contact */
.tww-contact { gap: 64px; margin-top: 8px; }
.tww-contact .wp-block-column > * { margin-block: 0 0; }
.tww-contact .wp-block-column > * + * { margin-block-start: 24px; }
.tww-photo img { display: block; width: 100%; height: auto; }
.tww-contact .postcard-front img { aspect-ratio: 4 / 5 !important; object-position: 50% 30%; }
.tww-contact p { font-size: 21px; line-height: 1.6; color: var(--tww-body); }
.tww-contact h2 { font-size: 34px; margin-block-start: 48px !important; padding-top: 32px; border-top: 1px solid var(--tww-line); }
.tww-contact .wpcf7-form { display: flex; flex-direction: column; gap: 18px; }
.tww-contact .wpcf7-form p { margin: 0; font-size: inherit; }
.tww-contact .wpcf7-form br { display: none; }
.tww-contact .wpcf7-form label { display: flex; flex-direction: column; gap: 6px; font-family: var(--tww-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--tww-muted); }
.tww-contact .wpcf7-form-control-wrap { display: block; }
.tww-contact .wpcf7-form input[type="text"],
.tww-contact .wpcf7-form input[type="email"],
.tww-contact .wpcf7-form textarea { width: 100%; box-sizing: border-box; min-height: 48px; background: var(--tww-card); border: 1px solid rgba(29, 27, 24, .28); border-radius: 2px; padding: 12px 14px; font-family: Newsreader, Georgia, serif; font-size: 18px; letter-spacing: 0; text-transform: none; color: var(--tww-ink); }
.tww-contact .wpcf7-form textarea { min-height: 160px; resize: vertical; }
.tww-contact .wpcf7-form input:focus, .tww-contact .wpcf7-form textarea:focus { outline: 2px solid var(--tww-mark); outline-offset: 1px; border-color: var(--tww-ink); }
.tww-contact .wpcf7-form input[type="submit"], .tww-contact .wpcf7-submit { align-self: flex-start; min-height: 48px; background: var(--tww-mark); color: #fff; border: 1.5px dashed rgba(251, 248, 242, .6); outline: 1.5px solid var(--tww-mark); border-radius: 2px; padding: 0 26px; font-family: var(--tww-mono); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; transition: background .15s ease, transform .15s ease; }
.tww-contact .wpcf7-form input[type="submit"]:hover, .tww-contact .wpcf7-form input[type="submit"]:focus-visible { background: #7d4536; outline-color: #7d4536; transform: rotate(-2deg); }
.tww-contact .wpcf7-form input[type="submit"]:disabled { opacity: .6; cursor: default; }
.tww-contact .wpcf7-spinner { margin: 0 0 0 12px; background-color: var(--tww-muted); }
.tww-contact .wpcf7-not-valid { border-color: var(--tww-mark) !important; }
.tww-contact .wpcf7-not-valid-tip { margin-top: 6px; font-family: var(--tww-mono); font-size: 12px; letter-spacing: .06em; text-transform: none; color: var(--tww-mark); }
.tww-contact .wpcf7 form .wpcf7-response-output { margin: 4px 0 0; padding: 14px 16px; border: 1px dashed rgba(29, 27, 24, .35); border-radius: 2px; background: var(--tww-card); font-family: var(--tww-mono); font-size: 13px; letter-spacing: .04em; line-height: 1.5; color: var(--tww-soft); }
.tww-contact .wpcf7 form.sent .wpcf7-response-output { border-color: var(--tww-ink); color: var(--tww-ink); }
.tww-contact .wpcf7 form.invalid .wpcf7-response-output,
.tww-contact .wpcf7 form.unaccepted .wpcf7-response-output,
.tww-contact .wpcf7 form.failed .wpcf7-response-output,
.tww-contact .wpcf7 form.spam .wpcf7-response-output { border-color: var(--tww-mark); color: var(--tww-mark); }

/* Map */
.tww-map { background: var(--tww-card); padding: 14px; box-shadow: var(--tww-shadow); }
.tww-map__canvas { height: 600px; }
.tww-map__canvas svg { display: block; width: 100%; height: 100%; }
.tww-map .land { fill: #ece6db; stroke: var(--tww-card); stroke-width: .6; }
.tww-map .land.visited { fill: #e2d3c0; }
.tww-map .graticule { fill: none; stroke: rgba(29, 27, 24, .07); }
.tww-map .pin circle { fill: var(--tww-mark); stroke: var(--tww-card); stroke-width: 2; }
.tww-map .pin text { font-family: var(--tww-mono); font-size: 11px; font-weight: 500; fill: var(--tww-card); }
.tww-map .pin { cursor: pointer; }
.tww-map .pin:hover circle { fill: var(--tww-ink); }
.tww-map__legend { list-style: none; margin: 48px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 48px; }
.tww-map__legend a { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--tww-line); text-decoration: none; }
.tww-map__legend a:hover .tww-map__name { text-decoration: underline; }
.tww-pin { width: 26px; height: 26px; border-radius: 50%; background: var(--tww-mark); color: var(--tww-card); display: flex; align-items: center; justify-content: center; font-family: var(--tww-mono); font-size: 12px; }
.tww-map__name { font-size: 24px; }

/* Photo album */
.tww-album-trip { margin-bottom: 72px; }
.tww-album-trip .tww-section-head h2 { font-size: 30px; }
.tww-album-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 220px; gap: 16px; }
.tww-album-grid a:first-child { grid-column: span 2; grid-row: span 2; }
.tww-album-grid img { display: block; width: 100%; height: 100% !important; object-fit: cover; border: 10px solid #fff; box-sizing: border-box; box-shadow: 0 6px 16px rgba(60, 40, 20, .08); }

/* ---------- Phones & small tablets ---------- */
@media (max-width: 782px) {
	.tww-main > * + * { margin-block-start: 56px; }
	.tww-main { padding-bottom: 56px; }
	.tww-header { padding: 16px 20px; }
	.tww-header .wp-block-site-logo img { height: 46px; }
	.tww-header--home { flex-direction: row; flex-wrap: wrap; justify-content: space-between; padding-top: 24px; gap: 8px; }
	.tww-header--home .wp-block-site-logo img { height: 54px; }
	.tww-intro { flex-basis: 100%; text-align: left; font-size: 18px; margin-top: 8px !important; }
	.tww-section-head h2 { font-size: 28px; }
	.tww-section-head { margin-bottom: 24px; }

	.tww-latest { padding-inline: 20px; margin-top: 16px; }
	.postcard-hero { grid-template-columns: 1fr; }
	.postcard-front { padding: 10px; }
	.postcard-back { aspect-ratio: auto; transform: rotate(1.5deg); margin: -14px 6px 0 !important; padding: 34px 22px 24px; grid-template-columns: 1fr; }
	.postcard-back .wp-block-post-title { font-size: 36px; max-width: 200px; }
	.postcard-back__address { position: static; border: 0; padding: 0; }
	.tww-stamp-mini { top: 22px; right: 18px; width: 62px; padding: 5px; }
	.postcard-back__address .postmark { top: 52px; right: 52px; width: 66px; height: 66px; font-size: 8px; padding: 5px; }
	.postcard-back__address .postmark .wp-block-post-date { font-size: 11px; }
	.postcard-lines { display: none; }
	.tww-latest .wp-block-read-more { min-height: 44px; display: inline-flex; align-items: center; margin-top: 20px; }

	.tww-what { grid-template-columns: 1fr; gap: 14px; padding: 32px 0; }
	.tww-what__title h2 { font-size: 30px; }
	.tww-what__photo.postcard-front { width: 220px; padding: 10px; margin-top: 8px !important; transform: rotate(-2deg); }
	.tww-what__body { font-size: 18px; }
	.tww-links a { min-height: 44px; display: inline-flex; align-items: center; border: 0; text-decoration: underline; text-underline-offset: 4px; }

	.tww-trips { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 14px; }
	.tww-trip__photo { padding: 6px; }
	.tww-trip__photo img, .tww-trip__blank { aspect-ratio: 4 / 5; }
	.tww-trip__meta { flex-direction: column; gap: 2px; }
	.tww-trip__name { font-size: 19px; }
	.tww-trips:has(+ .tww-also) .tww-trip:nth-child(n+3) { display: none; }
	.tww-mobile-only { display: inline-flex; }
	.tww-also { margin-top: 20px; gap: 0 20px; font-size: 12px; }
	.tww-also > * { min-height: 44px; display: inline-flex; align-items: center; }

	.tww-stamps, .tww-stamps--instagram #sbi_images { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
	.tww-stamp { padding: 6px; background: var(--tww-perf-sm); }

	.subscribe-card, .subscribe-card--big { grid-template-columns: 1fr; gap: 18px; padding: 28px 22px; position: relative; transform: none; }
	.subscribe-card__message h2 { font-size: 28px; padding-right: 56px; }
	.subscribe-card__form { border: 0; padding: 0; }
	.subscribe-card__form::before { position: absolute; top: 18px; right: 18px; width: 52px; height: 62px; border-width: 5px; font-size: 9px; }
	.subscribe-card__message h2 { padding-right: 64px; }
	.tww-subscribe-form { flex-direction: column; border: 0; gap: 12px; }
	.tww-subscribe-form input { border-bottom: 1px solid var(--tww-ink); font-size: 19px; }
	.tww-subscribe-form button { min-height: 48px; padding: 0 16px; background: var(--tww-mark); color: #fff; align-self: stretch !important; margin: 0 !important; }
	.subscribe-strip { padding: 32px 20px; flex-direction: column; align-items: stretch; }
	.subscribe-strip p { font-size: 24px; }
	.tww-main > .subscribe-strip { margin-bottom: -56px; }
	.subscribe-card--big .subscribe-card__message p { font-size: 20px; }

	.single-head { padding-top: 36px; }
	.single-head .wp-block-post-title { font-size: 48px; }
	.tww-main > .single-photo { margin-block-start: 36px; }
	.single-photo { padding-inline: 16px; }
	.single-photo .postcard-front { padding: 8px; transform: rotate(-1deg); }
	.single-photo .postcard-front img { aspect-ratio: 4 / 5 !important; max-height: 72vh; }
	.single-photo .postmark { top: -22px; right: 6px; width: 74px; height: 74px; font-size: 9px; }
	.single-photo .postmark .wp-block-post-date { font-size: 12px; }
	.tww-main > .tww-post-content { margin-block-start: 44px; }
	.tww-post-content { font-size: 19px; line-height: 1.68; padding-inline: 22px; }
	.tww-post-content h2 { font-size: 28px; }
	.tww-post-content figure img { border-width: 6px; }
	.tww-postnav { grid-template-columns: 1fr; gap: 14px; padding-inline: 20px; }
	.tww-postnav .post-navigation-link-next { grid-column: auto; }
	.tww-postnav .wp-block-post-navigation-link a { font-size: 19px; }
	.tww-postnav .tww-postnav__placeholder { font-size: 19px; }

	.tww-cards .wp-block-post-template { grid-template-columns: 1fr !important; gap: 40px; }
	.tww-filters { gap: 12px; }
	.tww-filters__field { flex: 1 1 140px; min-width: 0; }
	.tww-filters select { width: 100%; }
	.tww-page-head, .tww-page-intro { padding-top: 40px; }
	.tww-page-intro { margin-bottom: 24px; }
	.tww-page-intro p { white-space: normal; }
	.tww-trip-head { grid-template-columns: 1fr; padding-top: 40px; gap: 32px; }
	.tww-stack { height: 300px; }
	.tww-list .wp-block-post { grid-template-columns: 32px 96px minmax(0, 1fr); gap: 14px; }
	.tww-list .wp-block-post .tww-label { display: none; }
	.tww-list__img img { width: 96px; height: 72px !important; }
	.tww-list .wp-block-post-title { font-size: 20px; }
	.tww-results .wp-block-post { grid-template-columns: 96px minmax(0, 1fr); gap: 16px; }
	.tww-results__img img { width: 96px; height: 72px !important; }
	.tww-results .wp-block-post-title { font-size: 22px; }
	.tww-about { grid-template-columns: 1fr; gap: 40px; padding-top: 40px; }
	.tww-about .tww-polaroid { max-width: 320px; }
	.tww-about__text { font-size: 19px; }
	.tww-map__canvas { height: 360px; }
	.tww-contact { gap: 32px; }
	.tww-contact .wp-block-column:first-child .postcard-front { max-width: 320px; }
	.tww-contact p { font-size: 19px; }
	.tww-contact h2 { font-size: 28px; margin-block-start: 32px !important; }
	.tww-contact .wpcf7-form input[type="submit"] { align-self: stretch; }
	.tww-map__legend { grid-template-columns: 1fr; margin-top: 24px; }
	.tww-map__name { font-size: 20px; }
	.tww-album-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 150px; gap: 10px; }
	.tww-album-grid a:first-child { grid-row: span 1; }
	.tww-album-grid img { border-width: 6px; }
}

@media (min-width: 783px) and (max-width: 1080px) {
	.tww-stamps, .tww-stamps--instagram #sbi_images { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.postcard-back { padding: 20px 22px; }
	.postcard-lines { display: none; }
}
