@font-face{font-family:"CC Story Sans";font-style:normal;font-weight:100 700;font-display:swap;src:url(fonts/josefin-sans-latin.woff2) format("woff2")}
@font-face{font-family:"CC Story Slab";font-style:normal;font-weight:100 700;font-display:swap;src:url(fonts/josefin-slab-latin.woff2) format("woff2")}
@font-face{font-family:"CC Story Slab";font-style:italic;font-weight:100 700;font-display:swap;src:url(fonts/josefin-slab-italic-latin.woff2) format("woff2")}

.ccsb {
	--ccsb-ink: #2b1d16; --ccsb-muted: #705e50; --ccsb-surface: #fffbf5; --ccsb-soft: #f3ebdf;
	--ccsb-line: #dfd2bd; --ccsb-field: #fffdf9; --ccsb-accent: #2e6b5e; --ccsb-on-accent: #fffdf8;
	--ccsb-head: var(--wp--preset--font-family--heading, "CC Story Slab", Georgia, serif);
	--ccsb-body: var(--wp--preset--font-family--body, "CC Story Sans", system-ui, sans-serif);
	box-sizing: border-box; container-type: inline-size; position: relative; isolation: isolate;
	margin-block: 2.5rem; padding: clamp(1.25rem, 4vw, 2.5rem);
	border: 1px solid var(--ccsb-line); border-radius: 24px;
	background: var(--ccsb-surface); color: var(--ccsb-ink);
	font: 400 1rem/1.6 var(--ccsb-body);
	box-shadow: 0 3px 5px rgba(43,29,22,.025), 0 20px 50px -38px rgba(43,29,22,.32);
}
.ccsb *, .ccsb *::before, .ccsb *::after { box-sizing: border-box; }
.ccsb [hidden] { display: none !important; }
.ccsb-tone-espresso {
	--ccsb-ink:#f6efe4; --ccsb-muted:#c7b69d; --ccsb-surface:#2b1d16; --ccsb-soft:#392a21;
	--ccsb-line:#61503e; --ccsb-field:#3c2d23; --ccsb-accent:#b9d7c9; --ccsb-on-accent:#203b32;
	color-scheme:dark;
}
.ccsb-tone-sage { --ccsb-surface:#eef2e9; --ccsb-soft:#e4eadd; --ccsb-line:#c8d3c1; --ccsb-field:#f9fbf5; }
.ccsb-accent-terracotta { --ccsb-accent:#b9472a; --ccsb-on-accent:#fffaf2; }
.ccsb-accent-brass { --ccsb-accent:#916521; --ccsb-on-accent:#fffaf2; }
.ccsb-tone-espresso.ccsb-accent-terracotta { --ccsb-accent:#f1a086; --ccsb-on-accent:#422116; }
.ccsb-tone-espresso.ccsb-accent-brass { --ccsb-accent:#e5c58d; --ccsb-on-accent:#3b2917; }
.ccsb .ccsb-icon { display:inline-block; width:24px; height:24px; flex:none; vertical-align:middle; }
.ccsb .ccsb-head { margin:0 0 1.7rem; }
.ccsb .ccsb-kicker {
	display:flex; align-items:center; gap:.55rem; margin:0 0 .65rem; color:var(--ccsb-accent);
	font:700 .69rem/1.4 var(--ccsb-body); letter-spacing:.16em; text-transform:uppercase;
}
.ccsb-kicker .ccsb-icon { width:20px; height:20px; }
.ccsb .ccsb-title { margin:0; color:var(--ccsb-ink); font:700 clamp(1.75rem,1.25rem + 1.5vw,2.7rem)/1.1 var(--ccsb-head); letter-spacing:-.025em; overflow-wrap:anywhere; text-wrap:balance; }
.ccsb .ccsb-intro { max-width:650px; margin-top:.8rem; color:var(--ccsb-muted); font-size:1rem; line-height:1.6; }
.ccsb .ccsb-intro p, .ccsb .ccsb-footnote p { margin:0; }
.ccsb .ccsb-intro p+p, .ccsb .ccsb-footnote p+p { margin-top:.6em; }
.ccsb .ccsb-footnote {
	display:flex; align-items:flex-start; gap:.6rem; padding-top:1.2rem; margin-top:1.3rem;
	border-top:1px solid var(--ccsb-line); color:var(--ccsb-muted); font:.78rem/1.55 var(--ccsb-body);
}
.ccsb .ccsb-footnote > .ccsb-icon { width:17px; height:17px; margin-top:2px; }
.ccsb a { color:var(--ccsb-accent); text-underline-offset:4px; }
.ccsb :where(button,input,a,summary):focus-visible { outline:3px solid var(--ccsb-accent); outline-offset:4px; }
.ccsb .ccsb-button, .ccsb .ccsb-link, .ccsb .ccsb-text-button { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; min-height:44px; font:700 .8rem/1.3 var(--ccsb-body); }
.ccsb .ccsb-button { padding:.75rem 1.2rem; border:1px solid var(--ccsb-accent); border-radius:99px; background:var(--ccsb-accent); color:var(--ccsb-on-accent); text-decoration:none; }
.ccsb .ccsb-button:hover { filter:brightness(1.08); }
.ccsb .ccsb-link { justify-content:flex-start; text-decoration:none; }
.ccsb .ccsb-text-button { padding:.3rem 0; border:0; background:none; color:var(--ccsb-accent); cursor:pointer; text-align:left; text-decoration:underline; text-underline-offset:4px; }
.ccsb .ccsb-link .ccsb-icon, .ccsb .ccsb-button .ccsb-icon, .ccsb .ccsb-text-button .ccsb-icon { width:18px; height:18px; }
.ccsb .ccsb-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.ccsb button:disabled { cursor:default; opacity:1; }

/* Three travel styles and a transparent, per-person calculation. */
.ccsb-tiers { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem; }
.ccsb .ccsb-tier {
	display:flex; flex-direction:column; align-items:flex-start; position:relative; min-width:0; padding:1.1rem;
	border:1px solid var(--ccsb-line); border-radius:16px; background:var(--ccsb-soft); color:var(--ccsb-ink);
	text-align:left; cursor:pointer; font-family:var(--ccsb-body); transition:background .18s,border-color .18s;
}
.ccsb .ccsb-tier.is-active { background:var(--ccsb-accent); color:var(--ccsb-on-accent); border-color:var(--ccsb-accent); box-shadow:0 10px 24px -16px var(--ccsb-accent); }
.ccsb .ccsb-tier:hover:not(:disabled) { border-color:var(--ccsb-accent); }
.ccsb-tier__number { align-self:flex-end; opacity:.6; font-size:.65rem; letter-spacing:.1em; }
.ccsb-tier__name { font:700 1.65rem/1.1 var(--ccsb-head); margin:0 0 .35rem; overflow-wrap:anywhere; }
.ccsb-tier__description { font:500 .74rem/1.5 var(--ccsb-body); opacity:.85; min-height:2.8em; }
.ccsb-tier__rate { margin-top:1rem; font:700 clamp(1.35rem,1rem + .7vw,1.9rem)/1.2 var(--ccsb-head); overflow-wrap:anywhere; }
.ccsb-tier__unit { font:500 .67rem/1.5 var(--ccsb-body); opacity:.8; margin-top:.15rem; }
.ccsb-budget-inputs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.8rem; margin:1.5rem 0; padding:1.25rem 0; border-block:1px solid var(--ccsb-line); }
.ccsb-budget-inputs label { display:flex; flex-direction:column; gap:.15rem; font:700 .8rem/1.4 var(--ccsb-body); color:var(--ccsb-ink); min-width:0; }
.ccsb-budget-inputs label small { font:500 .66rem/1.4 var(--ccsb-body); color:var(--ccsb-muted); }
.ccsb-budget-inputs label:nth-child(-n+2)::after { content:""; height:.92rem; order:1; }
.ccsb-budget-inputs label input { order:2; margin-top:.45rem; }
.ccsb input[type=number] {
	display:block; width:100%; min-width:0; min-height:46px; padding:.6rem .65rem; border:1px solid var(--ccsb-line);
	border-radius:9px; background:var(--ccsb-field); color:var(--ccsb-ink); box-shadow:inset 0 2px 4px rgba(43,29,22,.025);
	font:600 1rem/1.1 var(--ccsb-body);
}
.ccsb input[aria-invalid=true] { border:2px solid #bd482f; background:#fff0e9; color:#512317; }
.ccsb-budget-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:1.5rem; }
.ccsb .ccsb-expenses { min-width:0; margin:0; padding:0; border:0; }
.ccsb-expenses legend { width:100%; padding:0; margin:0 0 .8rem; color:var(--ccsb-ink); font:700 1.25rem/1.25 var(--ccsb-head); }
.ccsb-expenses legend small { display:block; margin-top:.3rem; font:500 .69rem/1.4 var(--ccsb-body); color:var(--ccsb-muted); }
.ccsb .ccsb-expense { display:grid; grid-template-columns:25px minmax(0,1fr) 91px; gap:.65rem; align-items:center; margin:0; padding:.5rem 0; border-bottom:1px solid var(--ccsb-line); font:600 .88rem/1.4 var(--ccsb-body); }
.ccsb-expense > .ccsb-icon { color:var(--ccsb-accent); width:21px; height:21px; }
.ccsb .ccsb-expense input { text-align:right; font-size:.9rem; }
.ccsb .ccsb-budget-total { padding:1.6rem; border-radius:17px; background:radial-gradient(ellipse at 100% 0,rgba(201,164,99,.14),transparent 60%),#2b1d16; color:#f6efe4; align-self:start; }
.ccsb-budget-total .ccsb-kicker { color:#d6bd91; font-size:.62rem; margin-bottom:1rem; }
.ccsb-budget-total output { display:block; font:700 clamp(2.1rem,1rem + 3vw,3.4rem)/1.05 var(--ccsb-head); letter-spacing:-.045em; color:#fffaf2; overflow-wrap:anywhere; }
.ccsb .ccsb-budget-total > p { margin:.7rem 0 1.4rem; font:.75rem/1.5 var(--ccsb-body); color:#cabb9f; }
.ccsb-budget-total dl { margin:0; display:grid; gap:.7rem; }
.ccsb-budget-total dl > div { display:flex; justify-content:space-between; gap:1rem; font:.69rem/1.45 var(--ccsb-body); }
.ccsb-budget-total dt { color:#cabb9f; }
.ccsb-budget-total dd { margin:0; font-weight:700; text-align:right; overflow-wrap:anywhere; }
.ccsb-budget-person { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding-top:1rem; margin-top:1.2rem; border-top:1px solid #65503b; font:.7rem/1.4 var(--ccsb-body); }
.ccsb-budget-person strong { font:700 1.15rem/1.15 var(--ccsb-head); white-space:nowrap; }
.ccsb .ccsb-budget-error { color:#ffbea5 !important; margin-bottom:0 !important; }

/* Twelve editable months. Bar heights represent relative Celsius highs in either unit. */
.ccsb-climate-top { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin-bottom:1rem; }
.ccsb-climate-top > span { font:700 .69rem/1.4 var(--ccsb-body); letter-spacing:.08em; text-transform:uppercase; color:var(--ccsb-muted); }
.ccsb-unit { display:flex; flex:none; padding:3px; border:1px solid var(--ccsb-line); border-radius:99px; background:var(--ccsb-soft); }
.ccsb-unit button { min-width:44px; min-height:44px; padding:.4rem .65rem; border:0; border-radius:99px; background:transparent; color:var(--ccsb-ink); font:700 .88rem/1 var(--ccsb-body); cursor:pointer; }
.ccsb-unit button[aria-pressed=true] { background:var(--ccsb-field); box-shadow:0 2px 7px rgba(43,29,22,.09); }
.ccsb .ccsb-months { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:.55rem; margin:0; padding:0; list-style:none; }
.ccsb .ccsb-months > li { margin:0; padding:0; min-width:0; }
.ccsb-month, .ccsb-legend > span { --season:#8c8277; --season-track:rgba(140,130,119,.1); }
.ccsb .is-best { --season:#2e6b5e; --season-track:rgba(46,107,94,.1); }
.ccsb .is-good { --season:#8da584; --season-track:rgba(141,165,132,.12); }
.ccsb .is-mixed { --season:#bd934f; --season-track:rgba(189,147,79,.11); }
.ccsb .is-poor { --season:#cb6b50; --season-track:rgba(203,107,80,.1); }
.ccsb-tone-espresso .ccsb-month { --season-track:rgba(246,239,228,.06); }
.ccsb .ccsb-month button { display:block; width:100%; min-width:0; padding:0 0 .4rem; border:0; background:none; color:var(--ccsb-ink); text-align:center; cursor:pointer; }
.ccsb-month__column { display:block; position:relative; height:236px; overflow:hidden; border-radius:99px 99px 10px 10px; background:var(--season-track); border:1px solid transparent; }
.ccsb-month button[aria-pressed=true] .ccsb-month__column { border-color:var(--season); box-shadow:inset 0 0 0 1px var(--season); }
.ccsb-month__weather { position:absolute; top:20px; left:0; right:0; display:flex; justify-content:center; color:var(--ccsb-ink); filter:drop-shadow(1px 3px 2px rgba(43,29,22,.12)); }
.ccsb-month__weather .ccsb-icon { width:28px; height:28px; fill:var(--ccsb-surface); stroke-width:1.7; }
.ccsb-month__plot { position:absolute; top:72px; bottom:0; left:16%; right:16%; }
.ccsb-month__bar { position:absolute; bottom:0; left:9%; right:9%; border-radius:99px 99px 0 0; background:linear-gradient(90deg,rgba(255,255,255,.18),transparent 85%),var(--season); box-shadow:inset 1px 0 0 rgba(255,255,255,.2); }
.ccsb-month__temp { position:absolute; left:-25%; right:-25%; font:600 .9rem/1.15 var(--ccsb-head); white-space:nowrap; color:var(--ccsb-ink); }
.ccsb-month__name { display:block; font:700 .86rem/1.5 var(--ccsb-body); margin-top:.65rem; }
.ccsb-month__rating { display:block; font:500 .6rem/1.4 var(--ccsb-body); color:var(--ccsb-muted); }
.ccsb-climate-bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; margin-top:1.2rem; }
.ccsb-climate-hint { font:500 .72rem/1.5 var(--ccsb-body); color:var(--ccsb-muted); }
.ccsb-legend { display:flex; flex-wrap:wrap; gap:.8rem; font:500 .75rem/1.4 var(--ccsb-body); }
.ccsb-legend > span { display:inline-flex; align-items:center; gap:.35rem; }
.ccsb-legend i { width:9px; height:9px; border-radius:50%; background:var(--season); }
.ccsb-month-detail { display:flex; align-items:center; flex-wrap:wrap; gap:.25rem .8rem; margin-top:1.2rem; padding:1rem 1.2rem; border:1px solid var(--ccsb-line); border-radius:13px; background:var(--ccsb-soft); }
.ccsb-month-detail > strong { font:700 1.25rem/1.2 var(--ccsb-head); }
.ccsb-month-detail > span { font:700 .65rem/1.3 var(--ccsb-body); text-transform:uppercase; letter-spacing:.1em; color:var(--ccsb-accent); }
.ccsb .ccsb-month-detail p { margin:.3rem 0 0; flex-basis:100%; color:var(--ccsb-muted); font:.87rem/1.55 var(--ccsb-body); white-space:pre-line; }
.ccsb-month-detail p:empty { display:none; }

/* Small reusable writing blocks. */
.ccsb-callout { display:grid; grid-template-columns:48px minmax(0,1fr); gap:1.2rem; }
.ccsb-callout__icon { display:grid; place-items:center; width:48px; height:48px; border-radius:50%; background:var(--ccsb-soft); color:var(--ccsb-accent); border:1px solid var(--ccsb-line); }
.ccsb-callout .ccsb-head { margin-bottom:1rem; }
.ccsb-callout .ccsb-title { font-size:1.7rem; }
.ccsb-callout__body { font:400 1rem/1.65 var(--ccsb-body); }
.ccsb-callout__body > :first-child { margin-top:0; }
.ccsb-callout__body > :last-child { margin-bottom:0; }
.ccsb .ccsb-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; gap:1rem; }
.ccsb-facts > div { position:relative; min-width:0; padding:1.2rem 1.2rem 1.2rem 3.4rem; background:var(--ccsb-soft); border:1px solid var(--ccsb-line); border-radius:13px; }
.ccsb-facts .ccsb-icon { position:absolute; left:1rem; top:1.2rem; color:var(--ccsb-accent); width:21px; height:21px; }
.ccsb-facts dt { font:700 .65rem/1.4 var(--ccsb-body); text-transform:uppercase; letter-spacing:.1em; color:var(--ccsb-muted); }
.ccsb-facts dd { margin:.4rem 0 0; font:700 1.25rem/1.35 var(--ccsb-head); overflow-wrap:anywhere; min-height:1.35em; }
.ccsb .ccsb-route { list-style:none; margin:0; padding:0; }
.ccsb-route > li { display:grid; grid-template-columns:36px minmax(0,1fr); gap:1.2rem; position:relative; padding:0 0 1.8rem; margin:0; }
.ccsb-route > li:last-child { padding-bottom:0; }
.ccsb-route > li:not(:last-child)::before { content:""; position:absolute; left:17px; top:37px; bottom:0; width:1px; background:var(--ccsb-line); }
.ccsb-route__marker { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--ccsb-accent); color:var(--ccsb-on-accent); font:700 .8rem var(--ccsb-body); }
.ccsb-route__meta { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5rem; margin:.3rem 0 .5rem; color:var(--ccsb-accent); font:700 .68rem/1.4 var(--ccsb-body); letter-spacing:.09em; text-transform:uppercase; }
.ccsb-route__meta span:last-child { display:flex; gap:.35rem; align-items:center; }
.ccsb-route__meta .ccsb-icon { width:15px; height:15px; }
.ccsb .ccsb-route :is(h3,h4,h5) { margin:0; color:var(--ccsb-ink); font:700 1.5rem/1.2 var(--ccsb-head); }
.ccsb .ccsb-route__copy p { margin:.65rem 0 0; color:var(--ccsb-muted); }
.ccsb-packing-progress { display:flex; justify-content:space-between; align-items:center; gap:1rem; font:600 .8rem/1.4 var(--ccsb-body); color:var(--ccsb-muted); }
.ccsb-packing-meter { height:5px; margin:.5rem 0 1.2rem; border-radius:99px; background:var(--ccsb-line); overflow:hidden; }
.ccsb-packing-meter > span { display:block; height:100%; width:0; background:var(--ccsb-accent); transition:width .18s; }
.ccsb .ccsb-packing { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }
.ccsb-packing li { margin:0; padding:0; min-width:0; }
.ccsb-packing label { display:flex; align-items:center; position:relative; gap:.7rem; min-height:72px; padding:.8rem; border:1px solid var(--ccsb-line); border-radius:11px; cursor:pointer; }
.ccsb-packing input { position:absolute; width:1px; height:1px; opacity:0; }
.ccsb-packing__box { display:grid; place-items:center; flex:none; width:25px; height:25px; border:1px solid var(--ccsb-line); border-radius:7px; background:var(--ccsb-field); }
.ccsb-packing__box .ccsb-icon { opacity:0; width:17px; height:17px; }
.ccsb-packing input:checked + .ccsb-packing__box { background:var(--ccsb-accent); color:var(--ccsb-on-accent); border-color:var(--ccsb-accent); }
.ccsb-packing input:checked + .ccsb-packing__box .ccsb-icon { opacity:1; }
.ccsb-packing input:checked ~ span strong { text-decoration:line-through; color:var(--ccsb-muted); }
.ccsb-packing input:focus-visible + .ccsb-packing__box { outline:3px solid var(--ccsb-accent); outline-offset:3px; }
.ccsb-packing__group { display:block; color:var(--ccsb-muted); font:700 .58rem/1.4 var(--ccsb-body); letter-spacing:.1em; text-transform:uppercase; }
.ccsb-packing strong { display:block; font:600 .85rem/1.45 var(--ccsb-body); }
.ccsb-packing small { display:block; font:400 .73rem/1.5 var(--ccsb-body); color:var(--ccsb-muted); }
.ccsb-faq details { border-top:1px solid var(--ccsb-line); }
.ccsb-faq details:last-child { border-bottom:1px solid var(--ccsb-line); }
.ccsb .ccsb-faq summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:60px; padding:1rem 0; cursor:pointer; color:var(--ccsb-ink); font:700 1.15rem/1.4 var(--ccsb-head); }
.ccsb-faq summary::-webkit-details-marker { display:none; }
.ccsb-faq summary > span { display:grid; place-items:center; flex:none; width:30px; height:30px; border:1px solid var(--ccsb-line); border-radius:50%; font:400 1.4rem var(--ccsb-body); color:var(--ccsb-accent); }
.ccsb-faq details[open] summary > span { transform:rotate(45deg); }
.ccsb .ccsb-faq__answer { color:var(--ccsb-muted); padding-bottom:1.2rem; }
.ccsb .ccsb-faq__answer > :first-child { margin-top:0; }
.ccsb .ccsb-faq__answer > :last-child { margin-bottom:0; }
.ccsb-place.has-image { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1fr); gap:1.8rem; }
.ccsb-place__media { min-height:300px; border-radius:15px; overflow:hidden; background:var(--ccsb-soft); }
.ccsb .ccsb-place__image { display:block; height:100%; width:100%; object-fit:cover; }
.ccsb-place__body { min-width:0; align-self:center; }
.ccsb-place__body .ccsb-head { margin-bottom:1rem; }
.ccsb-place__description { color:var(--ccsb-muted); }
.ccsb-place__description > :first-child { margin-top:0; }
.ccsb .ccsb-place__facts { display:grid; gap:.6rem; list-style:none; padding:0; margin:1rem 0 1.3rem; }
.ccsb-place__facts li { display:flex; gap:.6rem; align-items:center; margin:0; font:500 .85rem/1.45 var(--ccsb-body); }
.ccsb-place__facts .ccsb-icon { color:var(--ccsb-accent); width:19px; height:19px; }

@container (max-width:650px) {
	.ccsb-budget-inputs { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.ccsb-budget-grid { grid-template-columns:1fr; gap:1.2rem; }
	.ccsb-budget-total output { font-size:3.1rem; }
	.ccsb-tier { padding:.8rem !important; }
	.ccsb-tier__name { font-size:1.35rem; }
	.ccsb .ccsb-months { grid-template-columns:repeat(6,minmax(0,1fr)); gap:1rem .5rem; }
	.ccsb-month__column { height:194px; }
	.ccsb-climate-hint { display:none; }
	.ccsb-climate-bottom { justify-content:flex-end; }
	.ccsb-place.has-image { grid-template-columns:1fr; gap:1.3rem; }
	.ccsb-place__media { min-height:0; aspect-ratio:16/9; }
}
@container (max-width:400px) {
	.ccsb .ccsb-title { font-size:1.85rem; }
	.ccsb .ccsb-tier { padding:.7rem .5rem !important; border-radius:12px; }
	.ccsb-tiers { gap:.4rem; }
	.ccsb-tier__name { font-size:1.15rem; }
	.ccsb-tier__description { font-size:.65rem; min-height:4.5em; }
	.ccsb-tier__rate { font-size:1.2rem; margin-top:.7rem; }
	.ccsb-tier__unit { font-size:.58rem; }
	.ccsb-budget-total { padding:1.3rem !important; }
	.ccsb-budget-total output { font-size:2.7rem; }
	.ccsb .ccsb-months { gap:.9rem .35rem; }
	.ccsb-month__column { height:166px; }
	.ccsb-month__plot { top:65px; left:14%; right:14%; }
	.ccsb-month__temp { font-size:.8rem; }
	.ccsb-month__name { font-size:.75rem; }
	.ccsb-month__rating { display:none; }
	.ccsb-month__weather .ccsb-icon { width:23px; height:23px; }
	.ccsb .ccsb-facts, .ccsb .ccsb-packing { grid-template-columns:1fr; }
	.ccsb-callout { grid-template-columns:1fr; gap:1rem; }
	.ccsb-route > li { gap:.8rem; grid-template-columns:30px minmax(0,1fr); }
	.ccsb-route__marker { width:30px; height:30px; }
	.ccsb-route > li:not(:last-child)::before { left:14px; top:31px; }
}
@media (prefers-reduced-motion:reduce) { .ccsb *, .ccsb *::before, .ccsb *::after { transition:none !important; scroll-behavior:auto !important; } }
@media print {
	.ccsb { box-shadow:none; break-inside:avoid; border:1px solid #aaa; }
	.ccsb-text-button, .ccsb-unit { display:none !important; }
	.ccsb-budget-total { print-color-adjust:exact; }
}
