.generic-hero { display:grid; align-items:center; gap:clamp(1rem,4vw,5rem); padding-block:clamp(3rem,10vw,10rem); }
.generic-hero.has-cover { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.generic-hero img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:var(--theme-radius,14px); }
.generic-hero h1 { font-size:clamp(2.7rem,8vw,8rem); overflow-wrap:anywhere; }
.generic-hero p { margin-top:1rem; max-width:62ch; }
.generic-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr)); gap:1.25rem; margin-block:2rem; }
.generic-cards article, .generic-cards figure { padding:1rem; background:var(--card); border-radius:var(--theme-radius,14px); }
.generic-cards img { aspect-ratio:4/3; width:100%; object-fit:cover; border-radius:var(--theme-radius,14px); }
.service-purchase { margin-block:1.5rem; }
.brand > img.brand-mark { object-fit:contain; border-radius:0; }
.analytics-consent { position:fixed; z-index:90; inset:auto 1rem 2.8rem auto; width:min(28rem,calc(100% - 2rem)); padding:1rem; background:var(--card); color:var(--ink); border:1px solid var(--line); border-radius:12px; box-shadow:0 10px 35px #15151530; }
.analytics-consent p { margin:0 0 .7rem; }
.analytics-preferences { display:block; margin:.5rem auto 1rem; border:0; text-decoration:underline; background:transparent; color:var(--ink); }
.analytics-preferences[hidden] { display:none; }
[data-family="1"] { --theme-radius:30px; }
[data-family="2"] { --theme-radius:5px; }
[data-family="2"] h1, [data-family="2"] h2, [data-family="3"] h1, [data-family="3"] h2 { font-family:"DM Sans",sans-serif; letter-spacing:-.05em; }
[data-family="3"] { --theme-radius:0; }
[data-family="4"] { --theme-radius:2px; }
[data-family="4"] h1, [data-family="4"] h2 { font-family:Georgia,serif; }
[data-family="5"] { --theme-radius:20px; }
[data-family="5"] h1, [data-family="5"] h2 { font-style:italic; }
[data-family="6"] { --theme-radius:0; }
[data-family="6"] h1, [data-family="6"] h2 { font-family:"DM Sans",sans-serif; font-weight:800; text-transform:uppercase; }
[data-family="7"] { --theme-radius:8px; }
[data-family="7"] .generic-hero img { padding:8px; background:var(--sand); }
[data-family="8"] { --theme-radius:0; }
[data-family="8"] .generic-hero img { aspect-ratio:16/10; }
[data-family="9"] { --theme-radius:25px; }
[data-family="9"] h1, [data-family="9"] h2 { letter-spacing:.015em; }
body[data-family]:not([data-family="0"]) .button { border-radius:var(--theme-radius,4px); }
body[data-layout="1"] .hero { min-height:560px; }
body[data-layout="1"] .hero .cover-image { width:55%; left:auto; }
body[data-layout="1"] .hero { background:#3d4033; }
[data-layout="2"] .generic-hero, [data-layout="2"] .hero-copy { text-align:center; margin-inline:auto; }
[data-layout="2"] .generic-hero p, [data-layout="2"] .hero-actions { margin-inline:auto; justify-content:center; }
[data-layout="2"] .generic-hero.has-cover, [data-layout="3"] .generic-hero.has-cover, [data-layout="8"] .generic-hero.has-cover { grid-template-columns:1fr; }
[data-layout="3"] .generic-hero img { max-height:520px; }
[data-layout="3"] .hero-inner { align-items:end; }
[data-layout="4"] .generic-hero img { order:-1; }
[data-layout="4"] .hero-copy { margin-left:auto; }
[data-layout="5"] .generic-hero, [data-layout="5"] .hero-inner { width:94%; }
[data-layout="6"] .generic-hero, [data-layout="6"] .hero-inner { width:min(86%,1040px); }
[data-layout="7"] .generic-hero { padding-block:2rem; }
[data-layout="7"] .hero { min-height:400px; }
[data-layout="8"] .generic-hero { position:relative; }
[data-layout="8"] .generic-hero img { max-height:70vh; }
[data-layout="8"] .hero { min-height:86vh; }
[data-layout="9"] .generic-hero { border-bottom:1px solid var(--line); }
[data-layout="9"] .hero-copy { border-left:1px solid #ffffff80; padding-left:1.5rem; }
@media(max-width:760px) { .generic-hero.has-cover { grid-template-columns:1fr; } body[data-layout="1"] .hero .cover-image { width:100%; } }

.admin-style-preview[data-palette="1"], body:not(.yoga-default)[data-palette="1"] { --paper:hsl(16 37% 97%); --cream:hsl(16 37% 97%); --bg:hsl(16 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(16 37% 99%); --sand:hsl(16 37% 92%); --clay:hsl(16 52% 36%); --clay-dark:hsl(16 52% 31%); --line:hsl(16 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="2"] { --paper:hsl(18 42% 95%); --cream:hsl(18 42% 95%); --bg:hsl(18 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(18 42% 98%); --sand:hsl(18 42% 90%); --clay:hsl(18 57% 37%); --clay-dark:hsl(18 57% 32%); --line:hsl(18 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="3"] { --paper:hsl(22 47% 93%); --cream:hsl(22 47% 93%); --bg:hsl(22 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(22 47% 96%); --sand:hsl(22 47% 88%); --clay:hsl(22 62% 34%); --clay-dark:hsl(22 62% 29%); --line:hsl(22 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="4"] { --paper:hsl(28 52% 98%); --cream:hsl(28 52% 98%); --bg:hsl(28 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(28 52% 99%); --sand:hsl(28 52% 93%); --clay:hsl(28 67% 39%); --clay-dark:hsl(28 67% 34%); --line:hsl(28 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="5"] { --paper:hsl(36 37% 96%); --cream:hsl(36 37% 96%); --bg:hsl(36 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(36 37% 99%); --sand:hsl(36 37% 91%); --clay:hsl(36 52% 38%); --clay-dark:hsl(36 52% 33%); --line:hsl(36 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="6"] { --paper:hsl(46 42% 94%); --cream:hsl(46 42% 94%); --bg:hsl(46 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(46 42% 97%); --sand:hsl(46 42% 89%); --clay:hsl(46 57% 33%); --clay-dark:hsl(46 57% 28%); --line:hsl(46 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="7"] { --paper:hsl(58 47% 92%); --cream:hsl(58 47% 92%); --bg:hsl(58 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(58 47% 95%); --sand:hsl(58 47% 87%); --clay:hsl(58 62% 30%); --clay-dark:hsl(58 62% 25%); --line:hsl(58 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="8"] { --paper:hsl(72 52% 90%); --cream:hsl(72 52% 90%); --bg:hsl(72 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(72 52% 93%); --sand:hsl(72 52% 86%); --clay:hsl(72 67% 31%); --clay-dark:hsl(72 67% 26%); --line:hsl(72 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="9"] { --paper:hsl(88 37% 19%); --cream:hsl(88 37% 19%); --bg:hsl(88 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(88 37% 24%); --sand:hsl(88 37% 28%); --clay:hsl(88 52% 68%); --clay-dark:hsl(88 52% 73%); --line:hsl(88 37% 28%); --theme-button-text:#211c18; }
[data-palette="10"] { --paper:hsl(106 42% 14%); --cream:hsl(106 42% 14%); --bg:hsl(106 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(106 42% 19%); --sand:hsl(106 42% 23%); --clay:hsl(106 57% 75%); --clay-dark:hsl(106 57% 80%); --line:hsl(106 42% 23%); --theme-button-text:#211c18; }
[data-palette="11"] { --paper:hsl(105 37% 97%); --cream:hsl(105 37% 97%); --bg:hsl(105 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(105 37% 99%); --sand:hsl(105 37% 92%); --clay:hsl(105 52% 36%); --clay-dark:hsl(105 52% 31%); --line:hsl(105 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="12"] { --paper:hsl(107 42% 95%); --cream:hsl(107 42% 95%); --bg:hsl(107 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(107 42% 98%); --sand:hsl(107 42% 90%); --clay:hsl(107 57% 37%); --clay-dark:hsl(107 57% 32%); --line:hsl(107 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="13"] { --paper:hsl(111 47% 93%); --cream:hsl(111 47% 93%); --bg:hsl(111 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(111 47% 96%); --sand:hsl(111 47% 88%); --clay:hsl(111 62% 34%); --clay-dark:hsl(111 62% 29%); --line:hsl(111 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="14"] { --paper:hsl(117 52% 98%); --cream:hsl(117 52% 98%); --bg:hsl(117 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(117 52% 99%); --sand:hsl(117 52% 93%); --clay:hsl(117 67% 39%); --clay-dark:hsl(117 67% 34%); --line:hsl(117 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="15"] { --paper:hsl(125 37% 96%); --cream:hsl(125 37% 96%); --bg:hsl(125 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(125 37% 99%); --sand:hsl(125 37% 91%); --clay:hsl(125 52% 38%); --clay-dark:hsl(125 52% 33%); --line:hsl(125 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="16"] { --paper:hsl(135 42% 94%); --cream:hsl(135 42% 94%); --bg:hsl(135 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(135 42% 97%); --sand:hsl(135 42% 89%); --clay:hsl(135 57% 33%); --clay-dark:hsl(135 57% 28%); --line:hsl(135 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="17"] { --paper:hsl(147 47% 92%); --cream:hsl(147 47% 92%); --bg:hsl(147 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(147 47% 95%); --sand:hsl(147 47% 87%); --clay:hsl(147 62% 30%); --clay-dark:hsl(147 62% 25%); --line:hsl(147 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="18"] { --paper:hsl(161 52% 90%); --cream:hsl(161 52% 90%); --bg:hsl(161 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(161 52% 93%); --sand:hsl(161 52% 86%); --clay:hsl(161 67% 31%); --clay-dark:hsl(161 67% 26%); --line:hsl(161 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="19"] { --paper:hsl(177 37% 19%); --cream:hsl(177 37% 19%); --bg:hsl(177 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(177 37% 24%); --sand:hsl(177 37% 28%); --clay:hsl(177 52% 68%); --clay-dark:hsl(177 52% 73%); --line:hsl(177 37% 28%); --theme-button-text:#211c18; }
[data-palette="20"] { --paper:hsl(195 42% 14%); --cream:hsl(195 42% 14%); --bg:hsl(195 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(195 42% 19%); --sand:hsl(195 42% 23%); --clay:hsl(195 57% 75%); --clay-dark:hsl(195 57% 80%); --line:hsl(195 42% 23%); --theme-button-text:#211c18; }
[data-palette="21"] { --paper:hsl(199 37% 97%); --cream:hsl(199 37% 97%); --bg:hsl(199 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(199 37% 99%); --sand:hsl(199 37% 92%); --clay:hsl(199 52% 36%); --clay-dark:hsl(199 52% 31%); --line:hsl(199 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="22"] { --paper:hsl(201 42% 95%); --cream:hsl(201 42% 95%); --bg:hsl(201 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(201 42% 98%); --sand:hsl(201 42% 90%); --clay:hsl(201 57% 37%); --clay-dark:hsl(201 57% 32%); --line:hsl(201 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="23"] { --paper:hsl(205 47% 93%); --cream:hsl(205 47% 93%); --bg:hsl(205 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(205 47% 96%); --sand:hsl(205 47% 88%); --clay:hsl(205 62% 34%); --clay-dark:hsl(205 62% 29%); --line:hsl(205 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="24"] { --paper:hsl(211 52% 98%); --cream:hsl(211 52% 98%); --bg:hsl(211 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(211 52% 99%); --sand:hsl(211 52% 93%); --clay:hsl(211 67% 39%); --clay-dark:hsl(211 67% 34%); --line:hsl(211 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="25"] { --paper:hsl(219 37% 96%); --cream:hsl(219 37% 96%); --bg:hsl(219 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(219 37% 99%); --sand:hsl(219 37% 91%); --clay:hsl(219 52% 38%); --clay-dark:hsl(219 52% 33%); --line:hsl(219 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="26"] { --paper:hsl(229 42% 94%); --cream:hsl(229 42% 94%); --bg:hsl(229 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(229 42% 97%); --sand:hsl(229 42% 89%); --clay:hsl(229 57% 33%); --clay-dark:hsl(229 57% 28%); --line:hsl(229 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="27"] { --paper:hsl(241 47% 92%); --cream:hsl(241 47% 92%); --bg:hsl(241 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(241 47% 95%); --sand:hsl(241 47% 87%); --clay:hsl(241 62% 30%); --clay-dark:hsl(241 62% 25%); --line:hsl(241 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="28"] { --paper:hsl(255 52% 90%); --cream:hsl(255 52% 90%); --bg:hsl(255 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(255 52% 93%); --sand:hsl(255 52% 86%); --clay:hsl(255 67% 31%); --clay-dark:hsl(255 67% 26%); --line:hsl(255 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="29"] { --paper:hsl(271 37% 19%); --cream:hsl(271 37% 19%); --bg:hsl(271 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(271 37% 24%); --sand:hsl(271 37% 28%); --clay:hsl(271 52% 68%); --clay-dark:hsl(271 52% 73%); --line:hsl(271 37% 28%); --theme-button-text:#211c18; }
[data-palette="30"] { --paper:hsl(289 42% 14%); --cream:hsl(289 42% 14%); --bg:hsl(289 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(289 42% 19%); --sand:hsl(289 42% 23%); --clay:hsl(289 57% 75%); --clay-dark:hsl(289 57% 80%); --line:hsl(289 42% 23%); --theme-button-text:#211c18; }
[data-palette="31"] { --paper:hsl(43 37% 97%); --cream:hsl(43 37% 97%); --bg:hsl(43 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(43 37% 99%); --sand:hsl(43 37% 92%); --clay:hsl(43 52% 36%); --clay-dark:hsl(43 52% 31%); --line:hsl(43 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="32"] { --paper:hsl(45 42% 95%); --cream:hsl(45 42% 95%); --bg:hsl(45 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(45 42% 98%); --sand:hsl(45 42% 90%); --clay:hsl(45 57% 37%); --clay-dark:hsl(45 57% 32%); --line:hsl(45 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="33"] { --paper:hsl(49 47% 93%); --cream:hsl(49 47% 93%); --bg:hsl(49 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(49 47% 96%); --sand:hsl(49 47% 88%); --clay:hsl(49 62% 34%); --clay-dark:hsl(49 62% 29%); --line:hsl(49 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="34"] { --paper:hsl(55 52% 98%); --cream:hsl(55 52% 98%); --bg:hsl(55 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(55 52% 99%); --sand:hsl(55 52% 93%); --clay:hsl(55 67% 39%); --clay-dark:hsl(55 67% 34%); --line:hsl(55 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="35"] { --paper:hsl(63 37% 96%); --cream:hsl(63 37% 96%); --bg:hsl(63 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(63 37% 99%); --sand:hsl(63 37% 91%); --clay:hsl(63 52% 38%); --clay-dark:hsl(63 52% 33%); --line:hsl(63 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="36"] { --paper:hsl(73 42% 94%); --cream:hsl(73 42% 94%); --bg:hsl(73 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(73 42% 97%); --sand:hsl(73 42% 89%); --clay:hsl(73 57% 33%); --clay-dark:hsl(73 57% 28%); --line:hsl(73 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="37"] { --paper:hsl(85 47% 92%); --cream:hsl(85 47% 92%); --bg:hsl(85 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(85 47% 95%); --sand:hsl(85 47% 87%); --clay:hsl(85 62% 30%); --clay-dark:hsl(85 62% 25%); --line:hsl(85 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="38"] { --paper:hsl(99 52% 90%); --cream:hsl(99 52% 90%); --bg:hsl(99 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(99 52% 93%); --sand:hsl(99 52% 86%); --clay:hsl(99 67% 31%); --clay-dark:hsl(99 67% 26%); --line:hsl(99 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="39"] { --paper:hsl(115 37% 19%); --cream:hsl(115 37% 19%); --bg:hsl(115 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(115 37% 24%); --sand:hsl(115 37% 28%); --clay:hsl(115 52% 68%); --clay-dark:hsl(115 52% 73%); --line:hsl(115 37% 28%); --theme-button-text:#211c18; }
[data-palette="40"] { --paper:hsl(133 42% 14%); --cream:hsl(133 42% 14%); --bg:hsl(133 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(133 42% 19%); --sand:hsl(133 42% 23%); --clay:hsl(133 57% 75%); --clay-dark:hsl(133 57% 80%); --line:hsl(133 42% 23%); --theme-button-text:#211c18; }
[data-palette="41"] { --paper:hsl(315 37% 97%); --cream:hsl(315 37% 97%); --bg:hsl(315 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(315 37% 99%); --sand:hsl(315 37% 92%); --clay:hsl(315 52% 36%); --clay-dark:hsl(315 52% 31%); --line:hsl(315 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="42"] { --paper:hsl(317 42% 95%); --cream:hsl(317 42% 95%); --bg:hsl(317 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(317 42% 98%); --sand:hsl(317 42% 90%); --clay:hsl(317 57% 37%); --clay-dark:hsl(317 57% 32%); --line:hsl(317 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="43"] { --paper:hsl(321 47% 93%); --cream:hsl(321 47% 93%); --bg:hsl(321 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(321 47% 96%); --sand:hsl(321 47% 88%); --clay:hsl(321 62% 34%); --clay-dark:hsl(321 62% 29%); --line:hsl(321 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="44"] { --paper:hsl(327 52% 98%); --cream:hsl(327 52% 98%); --bg:hsl(327 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(327 52% 99%); --sand:hsl(327 52% 93%); --clay:hsl(327 67% 39%); --clay-dark:hsl(327 67% 34%); --line:hsl(327 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="45"] { --paper:hsl(335 37% 96%); --cream:hsl(335 37% 96%); --bg:hsl(335 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(335 37% 99%); --sand:hsl(335 37% 91%); --clay:hsl(335 52% 38%); --clay-dark:hsl(335 52% 33%); --line:hsl(335 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="46"] { --paper:hsl(345 42% 94%); --cream:hsl(345 42% 94%); --bg:hsl(345 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(345 42% 97%); --sand:hsl(345 42% 89%); --clay:hsl(345 57% 33%); --clay-dark:hsl(345 57% 28%); --line:hsl(345 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="47"] { --paper:hsl(357 47% 92%); --cream:hsl(357 47% 92%); --bg:hsl(357 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(357 47% 95%); --sand:hsl(357 47% 87%); --clay:hsl(357 62% 30%); --clay-dark:hsl(357 62% 25%); --line:hsl(357 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="48"] { --paper:hsl(11 52% 90%); --cream:hsl(11 52% 90%); --bg:hsl(11 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(11 52% 93%); --sand:hsl(11 52% 86%); --clay:hsl(11 67% 31%); --clay-dark:hsl(11 67% 26%); --line:hsl(11 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="49"] { --paper:hsl(27 37% 19%); --cream:hsl(27 37% 19%); --bg:hsl(27 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(27 37% 24%); --sand:hsl(27 37% 28%); --clay:hsl(27 52% 68%); --clay-dark:hsl(27 52% 73%); --line:hsl(27 37% 28%); --theme-button-text:#211c18; }
[data-palette="50"] { --paper:hsl(45 42% 14%); --cream:hsl(45 42% 14%); --bg:hsl(45 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(45 42% 19%); --sand:hsl(45 42% 23%); --clay:hsl(45 57% 75%); --clay-dark:hsl(45 57% 80%); --line:hsl(45 42% 23%); --theme-button-text:#211c18; }
[data-palette="51"] { --paper:hsl(350 37% 97%); --cream:hsl(350 37% 97%); --bg:hsl(350 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(350 37% 99%); --sand:hsl(350 37% 92%); --clay:hsl(350 52% 36%); --clay-dark:hsl(350 52% 31%); --line:hsl(350 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="52"] { --paper:hsl(352 42% 95%); --cream:hsl(352 42% 95%); --bg:hsl(352 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(352 42% 98%); --sand:hsl(352 42% 90%); --clay:hsl(352 57% 37%); --clay-dark:hsl(352 57% 32%); --line:hsl(352 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="53"] { --paper:hsl(356 47% 93%); --cream:hsl(356 47% 93%); --bg:hsl(356 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(356 47% 96%); --sand:hsl(356 47% 88%); --clay:hsl(356 62% 34%); --clay-dark:hsl(356 62% 29%); --line:hsl(356 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="54"] { --paper:hsl(2 52% 98%); --cream:hsl(2 52% 98%); --bg:hsl(2 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(2 52% 99%); --sand:hsl(2 52% 93%); --clay:hsl(2 67% 39%); --clay-dark:hsl(2 67% 34%); --line:hsl(2 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="55"] { --paper:hsl(10 37% 96%); --cream:hsl(10 37% 96%); --bg:hsl(10 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(10 37% 99%); --sand:hsl(10 37% 91%); --clay:hsl(10 52% 38%); --clay-dark:hsl(10 52% 33%); --line:hsl(10 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="56"] { --paper:hsl(20 42% 94%); --cream:hsl(20 42% 94%); --bg:hsl(20 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(20 42% 97%); --sand:hsl(20 42% 89%); --clay:hsl(20 57% 33%); --clay-dark:hsl(20 57% 28%); --line:hsl(20 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="57"] { --paper:hsl(32 47% 92%); --cream:hsl(32 47% 92%); --bg:hsl(32 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(32 47% 95%); --sand:hsl(32 47% 87%); --clay:hsl(32 62% 30%); --clay-dark:hsl(32 62% 25%); --line:hsl(32 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="58"] { --paper:hsl(46 52% 90%); --cream:hsl(46 52% 90%); --bg:hsl(46 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(46 52% 93%); --sand:hsl(46 52% 86%); --clay:hsl(46 67% 31%); --clay-dark:hsl(46 67% 26%); --line:hsl(46 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="59"] { --paper:hsl(62 37% 19%); --cream:hsl(62 37% 19%); --bg:hsl(62 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(62 37% 24%); --sand:hsl(62 37% 28%); --clay:hsl(62 52% 68%); --clay-dark:hsl(62 52% 73%); --line:hsl(62 37% 28%); --theme-button-text:#211c18; }
[data-palette="60"] { --paper:hsl(80 42% 14%); --cream:hsl(80 42% 14%); --bg:hsl(80 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(80 42% 19%); --sand:hsl(80 42% 23%); --clay:hsl(80 57% 75%); --clay-dark:hsl(80 57% 80%); --line:hsl(80 42% 23%); --theme-button-text:#211c18; }
[data-palette="61"] { --paper:hsl(145 37% 97%); --cream:hsl(145 37% 97%); --bg:hsl(145 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(145 37% 99%); --sand:hsl(145 37% 92%); --clay:hsl(145 52% 36%); --clay-dark:hsl(145 52% 31%); --line:hsl(145 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="62"] { --paper:hsl(147 42% 95%); --cream:hsl(147 42% 95%); --bg:hsl(147 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(147 42% 98%); --sand:hsl(147 42% 90%); --clay:hsl(147 57% 37%); --clay-dark:hsl(147 57% 32%); --line:hsl(147 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="63"] { --paper:hsl(151 47% 93%); --cream:hsl(151 47% 93%); --bg:hsl(151 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(151 47% 96%); --sand:hsl(151 47% 88%); --clay:hsl(151 62% 34%); --clay-dark:hsl(151 62% 29%); --line:hsl(151 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="64"] { --paper:hsl(157 52% 98%); --cream:hsl(157 52% 98%); --bg:hsl(157 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(157 52% 99%); --sand:hsl(157 52% 93%); --clay:hsl(157 67% 39%); --clay-dark:hsl(157 67% 34%); --line:hsl(157 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="65"] { --paper:hsl(165 37% 96%); --cream:hsl(165 37% 96%); --bg:hsl(165 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(165 37% 99%); --sand:hsl(165 37% 91%); --clay:hsl(165 52% 38%); --clay-dark:hsl(165 52% 33%); --line:hsl(165 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="66"] { --paper:hsl(175 42% 94%); --cream:hsl(175 42% 94%); --bg:hsl(175 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(175 42% 97%); --sand:hsl(175 42% 89%); --clay:hsl(175 57% 33%); --clay-dark:hsl(175 57% 28%); --line:hsl(175 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="67"] { --paper:hsl(187 47% 92%); --cream:hsl(187 47% 92%); --bg:hsl(187 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(187 47% 95%); --sand:hsl(187 47% 87%); --clay:hsl(187 62% 30%); --clay-dark:hsl(187 62% 25%); --line:hsl(187 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="68"] { --paper:hsl(201 52% 90%); --cream:hsl(201 52% 90%); --bg:hsl(201 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(201 52% 93%); --sand:hsl(201 52% 86%); --clay:hsl(201 67% 31%); --clay-dark:hsl(201 67% 26%); --line:hsl(201 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="69"] { --paper:hsl(217 37% 19%); --cream:hsl(217 37% 19%); --bg:hsl(217 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(217 37% 24%); --sand:hsl(217 37% 28%); --clay:hsl(217 52% 68%); --clay-dark:hsl(217 52% 73%); --line:hsl(217 37% 28%); --theme-button-text:#211c18; }
[data-palette="70"] { --paper:hsl(235 42% 14%); --cream:hsl(235 42% 14%); --bg:hsl(235 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(235 42% 19%); --sand:hsl(235 42% 23%); --clay:hsl(235 57% 75%); --clay-dark:hsl(235 57% 80%); --line:hsl(235 42% 23%); --theme-button-text:#211c18; }
[data-palette="71"] { --paper:hsl(211 37% 97%); --cream:hsl(211 37% 97%); --bg:hsl(211 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(211 37% 99%); --sand:hsl(211 37% 92%); --clay:hsl(211 52% 36%); --clay-dark:hsl(211 52% 31%); --line:hsl(211 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="72"] { --paper:hsl(213 42% 95%); --cream:hsl(213 42% 95%); --bg:hsl(213 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(213 42% 98%); --sand:hsl(213 42% 90%); --clay:hsl(213 57% 37%); --clay-dark:hsl(213 57% 32%); --line:hsl(213 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="73"] { --paper:hsl(217 47% 93%); --cream:hsl(217 47% 93%); --bg:hsl(217 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(217 47% 96%); --sand:hsl(217 47% 88%); --clay:hsl(217 62% 34%); --clay-dark:hsl(217 62% 29%); --line:hsl(217 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="74"] { --paper:hsl(223 52% 98%); --cream:hsl(223 52% 98%); --bg:hsl(223 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(223 52% 99%); --sand:hsl(223 52% 93%); --clay:hsl(223 67% 39%); --clay-dark:hsl(223 67% 34%); --line:hsl(223 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="75"] { --paper:hsl(231 37% 96%); --cream:hsl(231 37% 96%); --bg:hsl(231 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(231 37% 99%); --sand:hsl(231 37% 91%); --clay:hsl(231 52% 38%); --clay-dark:hsl(231 52% 33%); --line:hsl(231 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="76"] { --paper:hsl(241 42% 94%); --cream:hsl(241 42% 94%); --bg:hsl(241 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(241 42% 97%); --sand:hsl(241 42% 89%); --clay:hsl(241 57% 33%); --clay-dark:hsl(241 57% 28%); --line:hsl(241 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="77"] { --paper:hsl(253 47% 92%); --cream:hsl(253 47% 92%); --bg:hsl(253 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(253 47% 95%); --sand:hsl(253 47% 87%); --clay:hsl(253 62% 30%); --clay-dark:hsl(253 62% 25%); --line:hsl(253 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="78"] { --paper:hsl(267 52% 90%); --cream:hsl(267 52% 90%); --bg:hsl(267 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(267 52% 93%); --sand:hsl(267 52% 86%); --clay:hsl(267 67% 31%); --clay-dark:hsl(267 67% 26%); --line:hsl(267 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="79"] { --paper:hsl(283 37% 19%); --cream:hsl(283 37% 19%); --bg:hsl(283 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(283 37% 24%); --sand:hsl(283 37% 28%); --clay:hsl(283 52% 68%); --clay-dark:hsl(283 52% 73%); --line:hsl(283 37% 28%); --theme-button-text:#211c18; }
[data-palette="80"] { --paper:hsl(301 42% 14%); --cream:hsl(301 42% 14%); --bg:hsl(301 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(301 42% 19%); --sand:hsl(301 42% 23%); --clay:hsl(301 57% 75%); --clay-dark:hsl(301 57% 80%); --line:hsl(301 42% 23%); --theme-button-text:#211c18; }
[data-palette="81"] { --paper:hsl(29 37% 97%); --cream:hsl(29 37% 97%); --bg:hsl(29 37% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(29 37% 99%); --sand:hsl(29 37% 92%); --clay:hsl(29 52% 36%); --clay-dark:hsl(29 52% 31%); --line:hsl(29 37% 92%); --theme-button-text:#fffaf1; }
[data-palette="82"] { --paper:hsl(31 42% 95%); --cream:hsl(31 42% 95%); --bg:hsl(31 42% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(31 42% 98%); --sand:hsl(31 42% 90%); --clay:hsl(31 57% 37%); --clay-dark:hsl(31 57% 32%); --line:hsl(31 42% 90%); --theme-button-text:#fffaf1; }
[data-palette="83"] { --paper:hsl(35 47% 93%); --cream:hsl(35 47% 93%); --bg:hsl(35 47% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(35 47% 96%); --sand:hsl(35 47% 88%); --clay:hsl(35 62% 34%); --clay-dark:hsl(35 62% 29%); --line:hsl(35 47% 88%); --theme-button-text:#fffaf1; }
[data-palette="84"] { --paper:hsl(41 52% 98%); --cream:hsl(41 52% 98%); --bg:hsl(41 52% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(41 52% 99%); --sand:hsl(41 52% 93%); --clay:hsl(41 67% 39%); --clay-dark:hsl(41 67% 34%); --line:hsl(41 52% 93%); --theme-button-text:#fffaf1; }
[data-palette="85"] { --paper:hsl(49 37% 96%); --cream:hsl(49 37% 96%); --bg:hsl(49 37% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(49 37% 99%); --sand:hsl(49 37% 91%); --clay:hsl(49 52% 38%); --clay-dark:hsl(49 52% 33%); --line:hsl(49 37% 91%); --theme-button-text:#fffaf1; }
[data-palette="86"] { --paper:hsl(59 42% 94%); --cream:hsl(59 42% 94%); --bg:hsl(59 42% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(59 42% 97%); --sand:hsl(59 42% 89%); --clay:hsl(59 57% 33%); --clay-dark:hsl(59 57% 28%); --line:hsl(59 42% 89%); --theme-button-text:#fffaf1; }
[data-palette="87"] { --paper:hsl(71 47% 92%); --cream:hsl(71 47% 92%); --bg:hsl(71 47% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(71 47% 95%); --sand:hsl(71 47% 87%); --clay:hsl(71 62% 30%); --clay-dark:hsl(71 62% 25%); --line:hsl(71 47% 87%); --theme-button-text:#fffaf1; }
[data-palette="88"] { --paper:hsl(85 52% 90%); --cream:hsl(85 52% 90%); --bg:hsl(85 52% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(85 52% 93%); --sand:hsl(85 52% 86%); --clay:hsl(85 67% 31%); --clay-dark:hsl(85 67% 26%); --line:hsl(85 52% 86%); --theme-button-text:#fffaf1; }
[data-palette="89"] { --paper:hsl(101 37% 19%); --cream:hsl(101 37% 19%); --bg:hsl(101 37% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(101 37% 24%); --sand:hsl(101 37% 28%); --clay:hsl(101 52% 68%); --clay-dark:hsl(101 52% 73%); --line:hsl(101 37% 28%); --theme-button-text:#211c18; }
[data-palette="90"] { --paper:hsl(119 42% 14%); --cream:hsl(119 42% 14%); --bg:hsl(119 42% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(119 42% 19%); --sand:hsl(119 42% 23%); --clay:hsl(119 57% 75%); --clay-dark:hsl(119 57% 80%); --line:hsl(119 42% 23%); --theme-button-text:#211c18; }
[data-palette="91"] { --paper:hsl(237 11% 97%); --cream:hsl(237 11% 97%); --bg:hsl(237 11% 97%); --ink:#25251f; --muted:#4d4940; --card:hsl(237 11% 99%); --sand:hsl(237 11% 92%); --clay:hsl(237 26% 36%); --clay-dark:hsl(237 26% 31%); --line:hsl(237 11% 92%); --theme-button-text:#fffaf1; }
[data-palette="92"] { --paper:hsl(239 16% 95%); --cream:hsl(239 16% 95%); --bg:hsl(239 16% 95%); --ink:#25251f; --muted:#4d4940; --card:hsl(239 16% 98%); --sand:hsl(239 16% 90%); --clay:hsl(239 31% 37%); --clay-dark:hsl(239 31% 32%); --line:hsl(239 16% 90%); --theme-button-text:#fffaf1; }
[data-palette="93"] { --paper:hsl(243 21% 93%); --cream:hsl(243 21% 93%); --bg:hsl(243 21% 93%); --ink:#25251f; --muted:#4d4940; --card:hsl(243 21% 96%); --sand:hsl(243 21% 88%); --clay:hsl(243 36% 34%); --clay-dark:hsl(243 36% 29%); --line:hsl(243 21% 88%); --theme-button-text:#fffaf1; }
[data-palette="94"] { --paper:hsl(249 26% 98%); --cream:hsl(249 26% 98%); --bg:hsl(249 26% 98%); --ink:#25251f; --muted:#4d4940; --card:hsl(249 26% 99%); --sand:hsl(249 26% 93%); --clay:hsl(249 41% 39%); --clay-dark:hsl(249 41% 34%); --line:hsl(249 26% 93%); --theme-button-text:#fffaf1; }
[data-palette="95"] { --paper:hsl(257 11% 96%); --cream:hsl(257 11% 96%); --bg:hsl(257 11% 96%); --ink:#25251f; --muted:#4d4940; --card:hsl(257 11% 99%); --sand:hsl(257 11% 91%); --clay:hsl(257 26% 38%); --clay-dark:hsl(257 26% 33%); --line:hsl(257 11% 91%); --theme-button-text:#fffaf1; }
[data-palette="96"] { --paper:hsl(267 16% 94%); --cream:hsl(267 16% 94%); --bg:hsl(267 16% 94%); --ink:#25251f; --muted:#4d4940; --card:hsl(267 16% 97%); --sand:hsl(267 16% 89%); --clay:hsl(267 31% 33%); --clay-dark:hsl(267 31% 28%); --line:hsl(267 16% 89%); --theme-button-text:#fffaf1; }
[data-palette="97"] { --paper:hsl(279 21% 92%); --cream:hsl(279 21% 92%); --bg:hsl(279 21% 92%); --ink:#25251f; --muted:#4d4940; --card:hsl(279 21% 95%); --sand:hsl(279 21% 87%); --clay:hsl(279 36% 30%); --clay-dark:hsl(279 36% 25%); --line:hsl(279 21% 87%); --theme-button-text:#fffaf1; }
[data-palette="98"] { --paper:hsl(293 26% 90%); --cream:hsl(293 26% 90%); --bg:hsl(293 26% 90%); --ink:#25251f; --muted:#4d4940; --card:hsl(293 26% 93%); --sand:hsl(293 26% 86%); --clay:hsl(293 41% 31%); --clay-dark:hsl(293 41% 26%); --line:hsl(293 26% 86%); --theme-button-text:#fffaf1; }
[data-palette="99"] { --paper:hsl(309 11% 19%); --cream:hsl(309 11% 19%); --bg:hsl(309 11% 19%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(309 11% 24%); --sand:hsl(309 11% 28%); --clay:hsl(309 26% 68%); --clay-dark:hsl(309 26% 73%); --line:hsl(309 11% 28%); --theme-button-text:#211c18; }
[data-palette="100"] { --paper:hsl(327 16% 14%); --cream:hsl(327 16% 14%); --bg:hsl(327 16% 14%); --ink:#fcf4e9; --muted:#ded1c4; --card:hsl(327 16% 19%); --sand:hsl(327 16% 23%); --clay:hsl(327 31% 75%); --clay-dark:hsl(327 31% 80%); --line:hsl(327 16% 23%); --theme-button-text:#211c18; }
body[data-palette]:not([data-palette="1"]), .admin-style-preview[data-palette] { background:var(--bg); color:var(--ink); }
body[data-palette="1"]:not(.yoga-default) .generic-hero { color:var(--ink); }
body[data-palette]:not([data-palette="1"]) .button-primary, .admin-style-preview .button-primary { color:var(--theme-button-text,#fffaf1); }
.admin-style-preview[data-layout="2"] { text-align:center; }
.admin-style-preview[data-layout="4"] { text-align:right; }
.admin-style-preview[data-layout="6"] { width:min(100%,35rem); }
.admin-style-preview[data-layout="7"] { padding:.7rem; }
.admin-style-preview[data-layout="8"] { padding:2rem; }
.admin-style-preview[data-layout="9"] { border-left:6px solid var(--clay); }


@font-face { font-family: "Comic Neue"; src: url("fonts/comic-neue-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Comic Neue"; src: url("fonts/comic-neue-700.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Playfair Display"; src: url("fonts/playfair-display.woff2") format("woff2"); font-weight: 400 700; font-display: swap; }
@font-face { font-family: Lexend; src: url("fonts/lexend.woff2") format("woff2"); font-weight: 400 700; font-display: swap; }
[data-font="comic"] { --serif: "Comic Neue", "Comic Sans MS", cursive; --sans: var(--serif); }
[data-font="instrument"] { --serif: "Instrument Serif", Georgia, serif; }
[data-font="playfair"] { --serif: "Playfair Display", Georgia, serif; }
[data-font="lexend"] { --serif: Lexend, system-ui, sans-serif; --sans: var(--serif); }
[data-font="dm-sans"] { --serif: "DM Sans", system-ui, sans-serif; }
[data-font="georgia"] { --serif: Georgia, serif; }
[data-font]:not([data-font="theme"]) :is(h1, h2, h3) { font-family: var(--serif); letter-spacing: normal; }
[data-font]:not([data-font="theme"]) .footer-main h2 { font-family: var(--sans); }
.admin-style-preview[data-font] { font-family: var(--sans); }

body[data-font]:not([data-font="theme"]):not([data-font="instrument"]) .hero h1 {
    font-size: clamp(2.35rem, 7vw, 6.2rem);
    overflow-wrap: anywhere;
}

/* Composition presets are independent of the theme, colors and typography. */
[data-columns="2"] { --layout-columns: 2; }
[data-columns="3"] { --layout-columns: 3; }
[data-columns="4"] { --layout-columns: 4; }
[data-columns="5"] { --layout-columns: 5; }
[data-columns="6"] { --layout-columns: 6; }
[data-spacing="0"] { --layout-gap: .8rem; --layout-padding: clamp(1.5rem, 3.5vw, 3rem); }
[data-spacing="1"] { --layout-gap: clamp(1.25rem, 3vw, 2.5rem); --layout-padding: clamp(2.75rem, 6vw, 6rem); }
[data-composition] main .section { padding-block: var(--layout-padding); }
[data-composition] main :is(.card-grid,.review-grid,.photo-grid,.home-gallery,.generic-cards,.stay-photos) {
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: var(--layout-gap);
}
@media (max-width: 540px) {
    [data-composition] main :is(.card-grid,.review-grid,.generic-cards) { grid-template-columns: minmax(0,1fr); }
}
@media (min-width: 760px) {
    [data-composition] main :is(.card-grid,.review-grid,.photo-grid,.home-gallery,.generic-cards,.stay-photos) {
        grid-template-columns: repeat(var(--layout-columns), minmax(0,1fr));
    }
}
@media (min-width: 900px) {
    [data-composition] main .layout-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
    body[data-composition] main .layout-hero > .cover-image { position: static; width: 100%; height: 100%; min-height: 0; object-fit: cover; grid-column: 2; grid-row: 1; }
    [data-composition] .layout-hero > .hero-inner { grid-column: 1; grid-row: 1; width: 100%; min-width: 0; padding-inline: clamp(1.25rem,4vw,5rem); }
    [data-composition] .layout-hero .hero-copy::before { display: none; }
    [data-composition] .layout-hero { background: #24312a; }
    [data-composition] .layout-hero h1 { font-size: clamp(3rem,6.5vw,7rem); overflow-wrap: anywhere; }
    [data-composition] main :is(.layout-panel,.subhero-inner,.generic-hero.has-cover,.team-feature) {
        display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: var(--layout-gap);
    }
    [data-composition] .generic-hero.has-cover > img { order: 0; }
    [data-composition="1"] main :is(.layout-panel,.subhero-inner,.generic-hero.has-cover,.team-feature) > :last-child,
    [data-composition="7"] .cms-blocks .layout-panel:nth-child(even) > :last-child { order: -1; }
    [data-composition="1"] .layout-hero > .cover-image { grid-column: 1; }
    [data-composition="1"] .layout-hero > .hero-inner { grid-column: 2; }
    :is([data-composition="2"],[data-composition="3"],[data-composition="4"],[data-composition="9"]) main
        :is(.layout-panel,.subhero-inner,.generic-hero.has-cover,.team-feature) { grid-template-columns: minmax(0,1fr); }
    :is([data-composition="2"],[data-composition="3"],[data-composition="4"]) main .layout-hero { grid-template-columns: minmax(0,1fr); }
    :is([data-composition="2"],[data-composition="3"],[data-composition="4"]) .layout-hero > :is(.cover-image,.hero-inner) { grid-column: 1; grid-row: auto; }
    :is([data-composition="2"],[data-composition="4"]) .layout-hero > .cover-image { order: 1; }
    :is([data-composition="2"],[data-composition="3"],[data-composition="4"]) .layout-hero > .cover-image { max-height: 42vh; }
    :is([data-composition="2"],[data-composition="3"],[data-composition="4"]) .layout-hero > .hero-inner { min-height: 0; }
    [data-composition="3"] main :is(.layout-panel,.subhero-inner,.generic-hero.has-cover,.team-feature) > :last-child { order: -1; }
    [data-composition="4"] main :is(.generic-hero,.hero-copy,.subhero-copy) { text-align: center; margin-inline: auto; }
    [data-composition="4"] main :is(.generic-hero p,.hero-text,.hero-actions) { margin-inline: auto; justify-content: center; }
    [data-composition="5"] main :is(.layout-hero,.layout-panel,.subhero-inner,.generic-hero.has-cover,.team-feature) { grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); }
    [data-composition="6"] main :is(.layout-hero,.layout-panel,.subhero-inner,.generic-hero.has-cover,.team-feature) { grid-template-columns: minmax(0,1fr) minmax(0,1.6fr); }
    [data-composition="7"] .stay-sections .layout-panel:nth-child(even) > .stay-photos { order: -1; }
    [data-composition="7"] .layout-hero > .cover-image { grid-column: 1; }
    [data-composition="7"] .layout-hero > .hero-inner { grid-column: 2; }
    [data-composition="7"] .generic-hero.has-cover > img { order: -1; }
    [data-composition="8"] main :is(.layout-hero,.layout-panel,.subhero-inner,.generic-hero.has-cover,.team-feature) { grid-template-columns: minmax(0,1fr) minmax(0,2fr); }
    [data-composition="8"] main :is(.layout-panel,.generic-hero,.subhero-inner) { border-block-end: 1px solid var(--line); padding-block-end: var(--layout-gap); }
    [data-composition="9"] main .layout-hero { display: block; }
    body[data-composition="9"] main .layout-hero > .cover-image { position: absolute; inset: 0; }
    [data-composition="9"] .layout-hero .hero-copy::before { display: block; }
    body[data-composition="9"] main .generic-hero.has-cover { position: relative; isolation: isolate; min-height: 27rem; color: white; padding-inline: 5%; }
    [data-composition="9"] .generic-hero.has-cover::before { content: ""; position: absolute; inset: 0; background: #162620a8; z-index: -1; }
    [data-composition="9"] .generic-hero.has-cover > img { position: absolute; inset: 0; height: 100%; z-index: -2; }
}

@font-face {
  font-family: 'Atkinson Hyperlegible Next';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/atkinson-hyperlegible-next-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Atkinson Hyperlegible Next';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/atkinson-hyperlegible-next-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="atkinson-hyperlegible-next"] { --serif: "Atkinson Hyperlegible Next", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/barlow-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Barlow';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/barlow-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="barlow"] { --serif: "Barlow", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/bricolage-grotesque-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Bricolage Grotesque';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/bricolage-grotesque-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="bricolage-grotesque"] { --serif: "Bricolage Grotesque", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/cormorant-garamond-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/cormorant-garamond-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="cormorant-garamond"] { --serif: "Cormorant Garamond", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Crimson Text';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/crimson-text-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Crimson Text';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/crimson-text-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="crimson-text"] { --serif: "Crimson Text", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/geist-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/geist-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="geist"] { --serif: "Geist", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/instrument-sans-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/instrument-sans-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="instrument-sans"] { --serif: "Instrument Sans", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/inter-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/inter-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="inter"] { --serif: "Inter", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/mulish-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/mulish-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="mulish"] { --serif: "Mulish", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/nunito-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/nunito-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="nunito"] { --serif: "Nunito", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'PT Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/pt-serif-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'PT Serif';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/pt-serif-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="pt-serif"] { --serif: "PT Serif", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/quicksand-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Quicksand';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/quicksand-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="quicksand"] { --serif: "Quicksand", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/source-sans-3-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/source-sans-3-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="source-sans-3"] { --serif: "Source Sans 3", system-ui, sans-serif; --sans: var(--serif); }

@font-face {
  font-family: 'Spectral';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/spectral-0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Spectral';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/spectral-1.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
[data-font="spectral"] { --serif: "Spectral", system-ui, sans-serif; --sans: var(--serif); }
