@font-face {
    font-family:Inter;
    src:url('/assets/fonts/catalog/inter/inter-400-latin.woff2') format('woff2');
    font-style:normal;
    font-weight:400;
    font-display:swap;
}

@font-face {
    font-family:Inter;
    src:url('/assets/fonts/catalog/inter/inter-600-latin.woff2') format('woff2');
    font-style:normal;
    font-weight:600 800;
    font-display:swap;
}

@font-face {
    font-family:Literary;
    src:url('/assets/fonts/catalog/cormorant-garamond/cormorant-garamond-400-latin.woff2') format('woff2');
    font-style:normal;
    font-weight:400;
    font-display:swap;
}

@font-face {
    font-family:Literary;
    src:url('/assets/fonts/catalog/cormorant-garamond/cormorant-garamond-600-latin.woff2') format('woff2');
    font-style:normal;
    font-weight:600 800;
    font-display:swap;
}

@font-face {
    font-family:Lora;
    src:url('/assets/fonts/catalog/lora/lora-400-italic-latin.woff2') format('woff2');
    font-style:italic;
    font-weight:400;
    font-display:swap;
}

:root {
    --paper:#faf8f1;
    --ink:#273c32;
    --green:#264b3c;
    --muted:#636b60;
    --clay:#a75036;
    --line:#dadfd1;
    --sage:#edf0e6;
    --serif:Literary,Georgia,serif;
    --sans:Inter,Arial,sans-serif;
}

* {
    box-sizing:border-box;
}

html {
    scroll-behavior:smooth;
    scroll-padding-top:28px;
}

body {
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font:15px/1.7 var(--sans);
    -webkit-font-smoothing:antialiased;
}

[hidden] {
    display:none!important;
}

a {
    color:inherit;
    text-decoration:none;
}

button {
    font:inherit;
    cursor:pointer;
}

img,svg {
    display:block;
    max-width:100%;
}

button,a,summary {
    -webkit-tap-highlight-color:transparent;
}

a:focus-visible,button:focus-visible,summary:focus-visible {
    outline:3px solid var(--clay);
    outline-offset:5px;
    border-radius:3px;
}

::selection {
    background:#e8c9a7;
    color:#183a2a;
}

p,h1,h2,h3 {
    margin-top:0;
}

h1,h2,h3 {
    font-family:var(--serif);
    font-weight:600;
    letter-spacing:-.035em;
    line-height:1.05;
}

h2 {
    font-size:clamp(40px,4.4vw,58px);
    margin-bottom:22px;
}

h2 em,h1 em {
    font-weight:400;
    color:var(--clay);
}

.wrap {
    width:min(1192px,calc(100% - 96px));
    margin-inline:auto;
}

.section {
    padding-block:104px;
}

.eyebrow {
    font:600 10px/1.6 var(--sans);
    text-transform:uppercase;
    letter-spacing:1.8px;
    color:var(--green);
    margin:0 0 22px;
    display:block;
}

.handwritten {
    font:italic 15px/1.5 Lora,Georgia,serif;
    color:var(--clay);
}

.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:22px;
    background:var(--green);
    color:#fffdf6;
    border:1px solid var(--green);
    padding:16px 23px;
    border-radius:5px;
    font-size:12px;
    font-weight:600;
    line-height:1.5;
    transition:background .2s,transform .2s;
}

.button:hover {
    background:#183a2b;
    transform:translateY(-2px);
}

.button>span {
    font-size:19px;
    line-height:1;
}

.button-outline {
    background:transparent;
    color:var(--green);
}

.button-outline:hover {
    background:#e7eddf;
}

.button-small {
    padding:11px 15px;
    font-size:11px;
    gap:14px;
}

.button-light {
    background:var(--paper);
    color:var(--green);
    border-color:var(--paper);
}

.button-light:hover {
    background:#e9e8db;
}

.text-link {
    display:inline-flex;
    gap:14px;
    align-items:center;
    font-size:12px;
    font-weight:600;
    line-height:1.6;
    text-decoration:underline;
    text-decoration-color:#aebaaa;
    text-underline-offset:6px;
}

.text-link:hover {
    text-decoration-color:var(--green);
}

.text-link>span {
    font-size:18px;
    text-decoration:none;
}

.skip-link {
    position:absolute;
    top:8px;
    left:8px;
    z-index:50;
    background:var(--paper);
    padding:10px 18px;
    transform:translateY(-160%);
}

.skip-link:focus {
    transform:none;
}

.site-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    min-height:102px;
    border-bottom:1px solid var(--line);
}

.brand {
    display:inline-flex;
    align-items:center;
    gap:8px;
    white-space:nowrap;
    line-height:1;
}

.brand>span {
    font:600 36px/.9 var(--serif);
    letter-spacing:-1.5px;
}

.brand-dot {
    color:var(--clay);
}

.desktop-nav {
    display:flex;
    gap:27px;
    font-size:11px;
    font-weight:600;
}

.desktop-nav a {
    padding:12px 0;
}

.desktop-nav a:hover {
    color:var(--clay);
}

.hero {
    display:grid;
    grid-template-columns:1.05fr 1fr;
    gap:45px;
    padding-top:72px;
    padding-bottom:50px;
    align-items:center;
}

.hero-copy {
    padding-bottom:30px;
}

.hero .eyebrow {
    font-size:9px;
    letter-spacing:1.55px;
    display:flex;
    align-items:center;
    gap:9px;
}

.status-dot {
    width:6px;
    height:6px;
    border-radius:50%;
    background:#72926b;
    box-shadow:0 0 0 4px #e5eadb;
    flex:none;
}

h1 {
    font-size:clamp(60px,5.4vw,76px);
    margin-bottom:25px;
    max-width:590px;
    line-height:1.015;
    letter-spacing:-3px;
}

h1 em {
    display:block;
}

.hero-lead {
    font-size:15px;
    line-height:1.85;
    max-width:450px;
    margin-bottom:12px;
    color:var(--muted);
}

.hero-detail {
    font-size:12px;
    font-weight:600;
    margin-bottom:29px;
}

.hero-actions {
    display:flex;
    align-items:center;
    gap:23px;
    flex-wrap:wrap;
}

.hero-actions .text-link {
    font-size:11px;
}

.hero-note {
    font-size:9px;
    margin:16px 0 0;
    color:var(--muted);
}

.hero-visual {
    min-width:0;
}

.shop-scene {
    min-height:525px;
    padding:72px 5% 75px;
    position:relative;
    isolation:isolate;
}

.shop-scene::before {
    content:"";
    position:absolute;
    background:#e7eadc;
    width:94%;
    aspect-ratio:1;
    top:7%;
    left:2%;
    border-radius:50%;
    z-index:-2;
}

.scene-orbit {
    position:absolute;
    border:1px solid #ced5bf;
    border-radius:50%;
    z-index:-1;
    pointer-events:none;
}

.orbit-one {
    width:98%;
    aspect-ratio:1;
    top:8%;
    left:0;
}

.orbit-two {
    width:90%;
    aspect-ratio:1;
    top:15%;
    left:7%;
}

.browser-card {
    position:relative;
    width:100%;
    max-width:430px;
    margin-inline:auto;
    border:1px solid #d1d4c7;
    background:#fffdf5;
    border-radius:8px;
    box-shadow:0 22px 55px #273c3218;
    transform:rotate(-3deg);
    overflow:hidden;
    animation:store-float 4.5s ease-in-out both;
}

.browser-bar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    height:31px;
    padding:0 12px;
    background:#f3f2eb;
    border-bottom:1px solid #e2e3d9;
    font-size:8px;
    color:#64705d;
}

.browser-dots {
    display:flex;
    gap:3px;
}

.browser-dots i {
    width:4px;
    height:4px;
    background:#d0d1c7;
    border-radius:50%;
}

.browser-url {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:80%;
}

.example-store {
    padding:18px 25px 24px;
}

.example-nav {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    border-bottom:1px solid #e3e3d5;
    padding-bottom:13px;
}

.example-nav>span:first-child {
    font:600 21px/1 var(--serif);
    letter-spacing:-.5px;
}

.tiny-dot {
    color:var(--clay);
}

.example-nav>span:last-child {
    font-size:7px;
    color:#59624e;
}

.example-story {
    text-align:center;
    padding:21px 0 13px;
}

.example-kicker {
    font:600 6px/1.5 var(--sans);
    letter-spacing:1px;
    color:#6b725d;
}

.example-story p {
    font:400 30px/.95 var(--serif);
    letter-spacing:-1px;
    margin:8px 0 10px;
}

.example-line {
    display:block;
    width:24px;
    height:1px;
    background:#be8c62;
    margin:auto;
}

.example-product {
    display:grid;
    grid-template-columns:38% 1fr;
    align-items:center;
    gap:23px;
    margin:2px 0 0;
}

.example-cover {
    transform:rotate(-5deg);
    box-shadow:5px 7px 0 #e1ddd0,8px 12px 17px #273c3222;
}

.example-cover img {
    width:100%;
    height:auto;
}

.example-product-copy p {
    font:600 30px/1 var(--serif);
    letter-spacing:-.8px;
    margin:9px 0 8px;
}

.example-product-copy>span:not(.example-kicker):not(.example-buy) {
    font-size:7px;
    display:block;
    color:#636b60;
}

.example-product-copy strong {
    display:block;
    font-size:12px;
    margin:11px 0;
}

.example-buy {
    display:flex;
    justify-content:space-between;
    gap:8px;
    background:var(--green);
    color:#fff;
    padding:8px 9px;
    font-size:7px;
    border-radius:2px;
}

.floating-note {
    position:absolute;
    display:flex;
    align-items:center;
    gap:10px;
    background:#fffefa;
    border:1px solid #dce1d3;
    border-radius:7px;
    box-shadow:0 6px 25px #273c3214;
    padding:13px 16px;
}

.sale-note {
    right:-10px;
    top:44px;
    z-index:2;
    animation:note-float 4s ease-in-out both;
}

.note-icon {
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    background:#e5edde;
    color:#386a43;
    border-radius:50%;
    font-size:15px;
}

.floating-note strong {
    display:block;
    font-size:9px;
    font-weight:600;
}

.floating-note div>span {
    display:block;
    font-size:8px;
    color:var(--muted);
    margin-top:3px;
}

.note-confetti {
    color:var(--clay);
    font-size:25px;
    align-self:flex-start;
}

.parcel-note {
    position:absolute;
    right:-8px;
    bottom:2px;
    z-index:3;
    transform:rotate(7deg);
    animation:parcel-float 4.5s ease-in-out both;
}

.parcel-note svg {
    width:115px;
    margin:auto;
    filter:drop-shadow(0 7px 6px #273c3220);
}

.parcel-note>span {
    display:block;
    margin-top:3px;
    font:italic 11px Lora,Georgia,serif;
    color:#6b563b;
    transform:rotate(-4deg);
    background:#f5eedf;
    padding:5px 10px;
    border:1px solid #e2d8bd;
}

.scene-spark {
    position:absolute;
    color:var(--clay);
    font-family:Georgia,serif;
}

.spark-one {
    font-size:42px;
    left:0;
    top:43px;
    transform:rotate(10deg);
}

.spark-two {
    font-size:48px;
    right:-7px;
    top:241px;
}

.scene-label {
    position:absolute;
    left:0;
    bottom:0;
    font-size:14px;
    transform:rotate(-7deg);
}

.scene-label svg {
    width:55px;
    position:absolute;
    right:-65px;
    top:-10px;
    transform:rotate(-30deg);
}

.scene-footer {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:21px;
    color:var(--muted);
    font-size:8px;
    line-height:1.5;
}

.benefit-strip {
    background:#f0f1e9;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.benefit-list {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    min-height:79px;
    font-size:10px;
}

.benefit-list>span {
    display:flex;
    gap:10px;
    align-items:center;
}

/* Solid pictograms remain legible at mobile sizes. */
.benefit-list svg {
    width:21px;
    height:21px;
    flex:none;
}

.ownership {
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:100px;
}

.ownership-copy>p:not(.eyebrow) {
    color:var(--muted);
    font-size:13px;
    line-height:1.85;
}

.ownership-copy .section-lead {
    font-weight:600;
    color:var(--ink)!important;
}

.check-list {
    list-style:none;
    margin:25px 0 29px;
    padding:0;
    font-size:12px;
}

.check-list li {
    position:relative;
    padding-left:23px;
    margin:13px 0;
    line-height:1.65;
}

.check-list li::before {
    content:'✓';
    position:absolute;
    left:0;
    color:var(--green);
    font-size:13px;
}

.check-list strong {
    font-weight:600;
    overflow-wrap:anywhere;
}

.editor-illustration {
    position:relative;
    min-height:470px;
    background:#eee6d7;
    border-radius:160px 160px 4px 4px;
    max-width:460px;
    width:100%;
    justify-self:end;
}

.editor-paper {
    position:absolute;
    inset:45px 67px 54px 55px;
    padding:24px 27px;
    background:#fffcf4;
    box-shadow:8px 11px 0 #d9cdb850;
    transform:rotate(4deg);
    border:1px solid #dcd1be;
}

.paper-label {
    font-size:6px;
    font-weight:600;
    letter-spacing:1.5px;
}

.editor-paper h3 {
    font-size:39px;
    line-height:1;
    letter-spacing:-1.5px;
    margin:13px 0 15px;
}

.editor-rule {
    width:35px;
    height:1px;
    background:#ae8060;
}

.editor-paper p {
    font-size:9px;
    line-height:1.65;
    color:var(--muted);
    margin:12px 0;
}

.editor-books {
    display:flex;
    gap:13px;
    align-items:flex-end;
}

.editor-books>img {
    width:86px;
    height:auto;
    box-shadow:4px 4px #d9d1c0;
}

.second-book {
    height:123px;
    width:86px;
    position:relative;
    background:#355849;
    color:#fff5df;
    text-align:center;
    padding:9px 5px;
    box-shadow:4px 4px #d9d1c0;
    overflow:hidden;
}

.second-book>span {
    font-size:4px;
    letter-spacing:1px;
    display:block;
}

.second-book>strong {
    font:400 20px/.9 var(--serif);
    display:block;
    margin-top:9px;
}

.second-book i {
    display:block;
    width:45px;
    height:45px;
    border:1px solid #d9ba8a;
    border-radius:50%;
    margin:6px auto;
    position:relative;
}

.second-book i::after {
    content:'';
    position:absolute;
    background:#d9ba8a;
    width:140%;
    height:3px;
    top:29px;
    left:-8px;
    transform:rotate(-20deg);
}

.second-book small {
    font-size:5px;
    position:absolute;
    bottom:4px;
    left:0;
    width:100%;
    letter-spacing:1px;
}

.edit-chip,.palette-chip {
    position:absolute;
    display:flex;
    align-items:center;
    gap:10px;
    background:#fffefa;
    padding:14px 18px;
    border:1px solid #d9dcca;
    border-radius:4px;
    box-shadow:0 7px 24px #273c3212;
    font-size:10px;
}

.edit-chip {
    left:-33px;
    top:95px;
    transform:rotate(-5deg);
}

.edit-chip>span:first-child {
    font-size:20px;
    color:var(--clay);
    line-height:1;
}

.chip-cursor {
    width:1px;
    height:16px;
    background:var(--clay);
}

.palette-chip {
    right:-15px;
    bottom:75px;
    transform:rotate(-4deg);
    gap:8px;
}

.palette-chip>span {
    margin-right:4px;
}

.palette-chip i {
    width:17px;
    height:17px;
    border-radius:50%;
    background:#264b3c;
}

.palette-chip i:nth-of-type(2) {
    background:#c36b4e;
}

.palette-chip i:nth-of-type(3) {
    background:#dfc391;
}

.palette-chip i:nth-of-type(4) {
    background:#a6b59b;
}

.editor-caption {
    position:absolute;
    bottom:14px;
    left:40px;
    transform:rotate(-4deg);
    font-size:13px;
}

.sales-section {
    background:var(--sage);
    border-block:1px solid var(--line);
}

.section-heading {
    display:flex;
    gap:80px;
    align-items:flex-end;
    justify-content:space-between;
    margin-bottom:48px;
}

.section-heading h2 {
    margin-bottom:0;
}

.section-heading>p {
    max-width:310px;
    color:var(--muted);
    font-size:13px;
    margin-bottom:7px;
    line-height:1.9;
}

.sales-steps {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:36px;
}

.sales-step {
    display:flex;
    flex-direction:column;
    border-top:1px solid #bec8b5;
    padding-top:16px;
}

.step-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    height:82px;
    margin-bottom:15px;
}

.step-number {
    font:400 44px/1 var(--serif);
    color:#687c64;
}

.step-top svg {
    height:77px;
    width:92px;
    margin-right:10px;
}

.sales-step h3 {
    font-size:31px;
    margin-bottom:15px;
    letter-spacing:-.7px;
    line-height:1.1;
}

.sales-step p {
    font-size:12px;
    line-height:1.9;
    color:var(--muted);
    margin-bottom:25px;
}

.step-foot {
    display:block;
    margin-top:auto;
    font-size:10px;
    font-weight:600;
    line-height:1.7;
    padding-right:10px;
}

.stock-note {
    display:flex;
    align-items:center;
    gap:20px;
    margin-top:48px;
    padding:24px 26px;
    background:#f8f9f3;
    border:1px solid #d8dece;
    border-radius:5px;
}

.stock-note-icon {
    flex:none;
    display:grid;
    place-items:center;
    width:25px;
    height:25px;
    border:1px solid #8e9b83;
    border-radius:50%;
    font:italic 16px Georgia,serif;
}

.stock-note p {
    font-size:11px;
    line-height:1.9;
    margin:0;
    flex:1;
    color:var(--muted);
}

.stock-note p strong {
    display:block;
    color:var(--ink);
    font-weight:600;
}

.stock-note .text-link {
    font-size:11px;
    flex-shrink:0;
}

.center-heading {
    text-align:center;
    max-width:750px;
    margin:0 auto 50px;
}

.center-heading>p:last-child {
    font-size:13px;
    color:var(--muted);
    margin-bottom:0;
}

.plans {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:23px;
    max-width:900px;
    margin:auto;
    align-items:stretch;
}

.plan {
    border:1px solid #d4d9cb;
    padding:35px;
    background:#fffdf7;
    border-radius:8px;
    display:flex;
    flex-direction:column;
    position:relative;
}

.plan-premium {
    border:1.5px solid var(--green);
    background:#f0f3e9;
}

.plan-overline {
    font-size:8px;
    letter-spacing:1.4px;
    font-weight:600;
    margin-bottom:13px;
    color:var(--muted);
}

.plan h3 {
    font-size:39px;
    margin:0 0 9px;
}

.plan-intro {
    font-size:11px;
    color:var(--muted);
    line-height:1.8;
    min-height:40px;
    margin-bottom:20px;
    max-width:290px;
}

.premium-tag {
    position:absolute;
    top:-13px;
    right:23px;
    background:var(--green);
    color:white;
    font-size:8px;
    letter-spacing:1px;
    padding:6px 13px;
    border-radius:3px;
}

.price {
    font:600 60px/1 var(--serif);
    letter-spacing:-1.5px;
    margin:7px 0 11px;
}

.price>span {
    font:400 12px/1.6 var(--sans);
    letter-spacing:0;
    margin-left:8px;
    color:var(--muted);
}

.price>[data-premium-price] {
    font:inherit;
    letter-spacing:inherit;
    color:inherit;
    margin:0;
}

.plan-billing {
    font-size:10px;
    line-height:1.7;
    color:var(--muted);
    margin:0 0 21px;
    min-height:34px;
}

.billing-toggle {
    display:flex;
    align-items:center;
    align-self:flex-start;
    border:1px solid #c8d3bd;
    border-radius:5px;
    padding:3px;
    margin-bottom:14px;
    background:#e1e8d9;
    gap:3px;
}

.billing-toggle button {
    background:none;
    border:0;
    color:#3d5141;
    padding:6px 10px;
    font-size:9px;
    border-radius:3px;
    min-height:30px;
}

.billing-toggle button[aria-pressed=true] {
    background:#fffdf6;
    color:#183e2b;
    box-shadow:0 1px 4px #273c3215;
}

.plan:not(.plan-premium)>.price {
    margin-top:62px;
}

.plan-commission {
    font-size:12px;
    display:flex;
    align-items:center;
    gap:11px;
    margin:0;
    padding:14px 0;
    border-block:1px solid #d3dbca;
}

.plan-commission strong {
    font-size:25px;
    font-weight:600;
    letter-spacing:-1px;
}

.plan .check-list {
    font-size:11px;
    margin:21px 0 27px;
    flex:1;
}

.plan .check-list li {
    margin:11px 0;
}

.plan>.button {
    width:100%;
    font-size:11px;
}

.pricing-clarity {
    max-width:900px;
    margin:26px auto 0;
    padding:24px 0;
    display:grid;
    grid-template-columns:1.15fr 1fr 1fr;
    gap:24px;
    border-bottom:1px solid var(--line);
    align-items:center;
}

.pricing-clarity .eyebrow {
    font-size:8px;
    letter-spacing:1.3px;
    margin-bottom:6px;
}

.pricing-clarity div>p {
    font:400 22px var(--serif);
    margin:0;
}

.pricing-clarity>p {
    font-size:11px;
    line-height:1.7;
    margin:0;
}

.pricing-clarity>p>strong {
    display:block;
    font-size:12px;
    font-weight:600;
}

.pricing-clarity>p>span {
    color:var(--muted);
    display:block;
    margin-top:3px;
    font-size:10px;
}

.pricing-fineprint {
    font-size:11px;
    line-height:1.9;
    color:var(--muted);
    max-width:900px;
    margin:18px auto 0;
}

.faq-section {
    background:#f2f0e7;
    border-block:1px solid #e1dfd1;
}

.faq-layout {
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:88px;
    align-items:start;
}

.faq-intro {
    position:sticky;
    top:40px;
}

.faq-intro h2 {
    font-size:51px;
}

.faq-intro>p:not(.eyebrow) {
    font-size:13px;
    line-height:1.9;
    color:var(--muted);
    max-width:290px;
    margin-bottom:25px;
}

.faq-item {
    border-bottom:1px solid #d4d8c9;
    scroll-margin-top:30px;
}

.faq-item:first-child {
    border-top:1px solid #d4d8c9;
}

.faq-item summary {
    display:flex;
    align-items:center;
    gap:15px;
    list-style:none;
    cursor:pointer;
    line-height:1.65;
    padding:21px 0;
    font-size:13px;
    font-weight:600;
}

.faq-item summary::-webkit-details-marker {
    display:none;
}

.faq-item summary>span:nth-child(2) {
    flex:1;
}

.faq-number {
    font-size:9px;
    color:#737d68;
    font-weight:400;
}

.faq-indicator {
    flex:none;
    width:13px;
    height:13px;
    position:relative;
    margin-inline:8px 3px;
}

.faq-indicator::before,.faq-indicator::after {
    content:'';
    position:absolute;
    background:var(--green);
    top:6px;
    left:0;
    width:13px;
    height:1px;
}

.faq-indicator::after {
    transform:rotate(90deg);
    transition:transform .2s;
}

.faq-item[open] .faq-indicator::after {
    transform:rotate(0);
}

.faq-answer {
    padding:0 31px 23px 28px;
    color:var(--muted);
    font-size:14px;
    line-height:1.95;
}

.faq-answer p {
    margin:0;
}

.invitation-section {
    margin-block:80px;
    background:var(--green);
    color:var(--paper);
    text-align:center;
    padding:64px 40px 52px;
    position:relative;
    overflow:hidden;
    border-radius:8px;
}

.invitation-section .eyebrow {
    color:#cfdbc5;
    font-size:9px;
}

.invitation-section h2 {
    font-size:66px;
    margin-bottom:20px;
    font-weight:400;
}

.invitation-section h2 em {
    color:#dfc293;
}

.invitation-section>p:not(.eyebrow) {
    font-size:12px;
    color:#d6ded0;
    max-width:405px;
    margin:0 auto 27px;
    line-height:1.9;
}

.invitation-section .button {
    position:relative;
}

.invitation-note {
    display:block;
    font-size:9px;
    color:#c1ceb9;
    margin-top:15px;
}

.invitation-art {
    position:absolute;
    left:7%;
    top:37%;
    width:123px;
    transform:rotate(-17deg);
    color:#c2ceae;
}

.invitation-section::after {
    content:'✳';
    position:absolute;
    right:10%;
    top:31%;
    font:100px Georgia,serif;
    transform:rotate(17deg);
    color:#c4a378;
}

.site-footer {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:30px;
    padding:5px 0 38px;
}

.site-footer .brand>span {
    font-size:33px;
}

.site-footer p {
    font-size:9px;
    color:var(--muted);
    margin:13px 0 0;
}

.site-footer nav {
    display:flex;
    flex-wrap:wrap;
    gap:20px;
    font-size:9px;
    padding-top:9px;
}

.site-footer nav a:hover {
    text-decoration:underline;
    text-underline-offset:4px;
}

.footer-origin {
    font-size:9px;
    text-align:right;
    line-height:1.9;
    color:var(--muted);
    padding-top:6px;
}

@keyframes store-float {
    0%,100% {
        transform:translateY(0) rotate(-3deg);
    }
    50% {
        transform:translateY(-8px) rotate(-2deg);
    }
}

@keyframes note-float {
    0%,100% {
        transform:translateY(0) rotate(1deg);
    }
    50% {
        transform:translateY(-10px) rotate(-1deg);
    }
}

@keyframes parcel-float {
    0%,100% {
        transform:translateY(0) rotate(7deg);
    }
    50% {
        transform:translateY(-7px) rotate(3deg);
    }
}

@media(min-width:1440px) {
    .hero {
        gap:58px;
        padding-top:75px;
        padding-bottom:57px;
    }
}

@media(max-width:1100px) {
    .wrap {
        width:calc(100% - 64px);
    }
    .desktop-nav {
        gap:18px;
        font-size:10px;
    }
    .hero {
        gap:25px;
    }
    .hero h1 {
        font-size:65px;
    }
    .hero-actions {
        gap:18px;
    }
    .hero-actions>.button {
        padding:14px 18px;
    }
    .hero-actions>.text-link {
        font-size:10px;
    }
    .shop-scene {
        min-height:490px;
    }
    .shop-scene {
        padding:85px 3% 65px;
    }
    .example-store {
        padding:17px 21px 23px;
    }
    .example-story p {
        font-size:27px;
    }
    .example-product {
        gap:19px;
    }
    .scene-label {
        bottom:10px;
        font-size:12px;
    }
    .floating-note {
        padding:11px 12px;
        gap:8px;
    }
    .floating-note strong {
        font-size:8px;
    }
    .sale-note {
        right:-2px;
        top:63px;
    }
    .benefit-list {
        gap:15px;
        font-size:9px;
    }
    .ownership {
        gap:65px;
    }
    .editor-paper {
        inset:48px 40px 55px;
    }
    .editor-illustration {
        min-height:450px;
    }
    .editor-paper h3 {
        font-size:36px;
    }
    .section {
        padding-block:85px;
    }
    .faq-layout {
        gap:55px;
    }
    .faq-intro h2 {
        font-size:45px;
    }
    .plan {
        padding:30px;
    }
    .invitation-art {
        left:5%;
        width:100px;
    }
    .invitation-section::after {
        right:7%;
    }
}

@media(max-width:900px) {
    .desktop-nav {
        display:none;
    }
    .hero {
        grid-template-columns:1fr 1fr;
        gap:20px;
        padding-top:55px;
    }
    .hero h1 {
        font-size:58px;
        letter-spacing:-2px;
    }
    .hero .eyebrow {
        font-size:8px;
    }
    .hero-lead {
        font-size:13px;
    }
    .hero-detail {
        font-size:11px;
    }
    .hero-note {
        font-size:8px;
    }
    .hero-actions {
        gap:18px;
    }
    .hero-actions>.text-link {
        font-size:11px;
    }
    .shop-scene {
        min-height:440px;
    }
    .example-store {
        padding:16px;
    }
    .example-nav>span:first-child {
        font-size:17px;
    }
    .example-nav>span:last-child {
        font-size:6px;
    }
    .example-story p {
        font-size:25px;
    }
    .example-product-copy p {
        font-size:26px;
    }
    .example-product {
        gap:15px;
    }
    .example-product-copy>span:not(.example-kicker):not(.example-buy) {
        font-size:6px;
    }
    .example-kicker {
        font-size:5px;
    }
    .example-buy {
        font-size:6px;
        padding:7px;
    }
    .parcel-note {
        bottom:4px;
        right:0;
    }
    .parcel-note svg {
        width:85px;
    }
    .parcel-note>span {
        font-size:9px;
    }
    .scene-label {
        font-size:11px;
        bottom:15px;
        left:-6px;
    }
    .scene-label svg {
        width:40px;
        right:-45px;
    }
    .scene-footer {
        font-size:9px;
        gap:10px;
        align-items:flex-start;
    }
    .benefit-list {
        display:grid;
        grid-template-columns:1fr 1fr;
        padding-block:22px;
        gap:15px 40px;
        font-size:10px;
    }
    .ownership {
        gap:40px;
    }
    .editor-illustration {
        min-height:430px;
    }
    .editor-paper {
        inset:55px 32px 51px;
        padding:21px;
    }
    .editor-paper h3 {
        font-size:32px;
    }
    .edit-chip {
        left:-18px;
        top:96px;
        font-size:8px;
        padding:10px;
    }
    .palette-chip {
        right:-7px;
        bottom:66px;
        padding:10px;
        font-size:8px;
        gap:6px;
    }
    .palette-chip i {
        width:14px;
        height:14px;
    }
    .editor-caption {
        font-size:11px;
        left:25px;
        bottom:18px;
    }
    .editor-books>img {
        width:75px;
    }
    .second-book {
        width:75px;
        height:110px;
    }
    .ownership-copy>p:not(.eyebrow) {
        font-size:12px;
    }
    .check-list {
        font-size:11px;
    }
    h2 {
        font-size:44px;
    }
    .section-heading {
        gap:35px;
    }
    .section-heading>p {
        font-size:12px;
        max-width:250px;
    }
    .sales-steps {
        gap:24px;
    }
    .sales-step h3 {
        font-size:27px;
    }
    .sales-step p {
        font-size:11px;
    }
    .stock-note {
        padding:20px;
        gap:15px;
    }
    .plans {
        gap:18px;
    }
    .plan {
        padding:26px;
    }
    .faq-layout {
        gap:35px;
        grid-template-columns:.75fr 1.25fr;
    }
    .faq-intro h2 {
        font-size:40px;
    }
    .faq-intro>p:not(.eyebrow) {
        font-size:12px;
    }
    .faq-item summary {
        font-size:12px;
    }
    .faq-answer {
        font-size:13px;
    }
    .invitation-art {
        width:85px;
        left:4%;
    }
    .invitation-section::after {
        font-size:80px;
        right:5%;
    }
    .site-footer {
        flex-wrap:wrap;
    }
    .site-footer nav {
        gap:13px;
    }
}

@media(max-width:700px) {
    html {
        scroll-padding-top:18px;
    }
    .wrap {
        width:calc(100% - 40px);
    }
    .section {
        padding-block:64px;
    }
    .site-header {
        min-height:81px;
        gap:15px;
    }
    .brand>span {
        font-size:33px;
    }
    .brand img {
        width:30px;
        height:30px;
    }
    .site-header .button {
        font-size:9px;
        padding:10px 12px;
        gap:9px;
    }
    .site-header .button>span {
        font-size:15px;
    }
    .hero {
        grid-template-columns:1fr;
        gap:10px;
        padding-top:45px;
        padding-bottom:30px;
    }
    .hero-copy {
        padding:0;
    }
    .hero .eyebrow {
        font-size:8px;
        letter-spacing:1.3px;
        margin-bottom:20px;
    }
    .hero h1 {
        font-size:65px;
        letter-spacing:-2.6px;
        max-width:480px;
        margin-bottom:24px;
    }
    .hero-lead {
        font-size:14px;
        max-width:440px;
    }
    .hero-detail {
        font-size:11px;
        margin-bottom:23px;
    }
    .hero-actions {
        gap:20px;
    }
    .hero-actions>.button {
        font-size:11px;
        padding:15px 18px;
    }
    .hero-actions>.text-link {
        font-size:10px;
    }
    .hero-note {
        font-size:9px;
        line-height:1.8;
        max-width:320px;
        margin-top:15px;
    }
    .hero-visual {
        width:100%;
        max-width:450px;
        margin:6px auto 0;
    }
    .shop-scene {
        min-height:490px;
    }
    .shop-scene::before {
        width:92%;
        left:4%;
        top:10%;
    }
    .shop-scene {
        padding:90px 6% 70px;
        min-height:0;
    }
    .example-store {
        padding:18px 23px 24px;
    }
    .example-nav>span:first-child {
        font-size:20px;
    }
    .example-nav>span:last-child {
        font-size:7px;
    }
    .example-story {
        padding:21px 0 13px;
    }
    .example-story p {
        font-size:29px;
    }
    .example-product-copy p {
        font-size:29px;
    }
    .example-product {
        gap:21px;
    }
    .example-product-copy>span:not(.example-kicker):not(.example-buy) {
        font-size:7px;
    }
    .example-kicker {
        font-size:6px;
    }
    .example-buy {
        font-size:7px;
        padding:8px;
    }
    .sale-note {
        right:0;
        top:59px;
    }
    .floating-note strong {
        font-size:9px;
    }
    .floating-note div>span {
        font-size:8px;
    }
    .scene-label {
        bottom:7px;
        font-size:13px;
        left:7px;
    }
    .scene-label svg {
        width:48px;
        right:-50px;
    }
    .parcel-note {
        right:0;
        bottom:-2px;
    }
    .parcel-note svg {
        width:93px;
    }
    .parcel-note>span {
        font-size:10px;
    }
    .spark-one {
        left:1%;
        top:50px;
        font-size:33px;
    }
    .spark-two {
        right:0;
        top:227px;
        font-size:34px;
    }
    .scene-footer {
        font-size:9px;
        margin-top:23px;
        gap:20px;
    }
    .benefit-list {
        gap:18px;
        font-size:9px;
        line-height:1.6;
    }
    .benefit-list>span {
        gap:9px;
    }
    .ownership {
        grid-template-columns:1fr;
        gap:40px;
    }
    .eyebrow {
        font-size:9px;
        margin-bottom:18px;
    }
    h2 {
        font-size:45px;
        letter-spacing:-1.4px;
    }
    .ownership-copy>p:not(.eyebrow) {
        font-size:13px;
    }
    .check-list {
        font-size:12px;
    }
    .ownership .check-list {
        margin-block:22px;
    }
    .editor-illustration {
        justify-self:center;
        max-width:390px;
        width:calc(100% - 18px);
        min-height:440px;
    }
    .editor-paper {
        inset:47px 53px 48px 45px;
    }
    .editor-paper h3 {
        font-size:36px;
    }
    .editor-books>img {
        width:85px;
    }
    .second-book {
        width:85px;
        height:122px;
    }
    .edit-chip {
        top:91px;
        left:-10px;
        font-size:10px;
        padding:12px 15px;
    }
    .palette-chip {
        right:-10px;
        bottom:69px;
        padding:12px;
        font-size:10px;
    }
    .palette-chip i {
        width:17px;
        height:17px;
    }
    .editor-caption {
        left:31px;
        font-size:12px;
        bottom:14px;
    }
    .section-heading {
        display:block;
        margin-bottom:32px;
    }
    .section-heading>p {
        max-width:450px;
        font-size:13px;
        margin:24px 0 0;
    }
    .sales-steps {
        grid-template-columns:1fr;
        gap:30px;
    }
    .sales-step {
        position:relative;
        padding-top:20px;
    }
    .step-top {
        height:62px;
        margin-bottom:0;
        position:absolute;
        right:0;
        top:17px;
    }
    .step-top svg {
        width:78px;
        height:67px;
        margin:0;
    }
    .step-number {
        position:absolute;
        top:-11px;
        right:85px;
        font-size:22px;
    }
    .sales-step h3 {
        font-size:31px;
        padding-right:95px;
        margin-bottom:17px;
    }
    .sales-step p {
        font-size:13px;
        margin-bottom:13px;
        max-width:480px;
    }
    .step-foot {
        font-size:10px;
    }
    .stock-note {
        margin-top:32px;
        flex-wrap:wrap;
        gap:13px;
        padding:20px;
    }
    .stock-note p {
        flex-basis:calc(100% - 43px);
        font-size:11px;
    }
    .stock-note .text-link {
        margin-left:38px;
    }
    .center-heading {
        text-align:left;
        margin-bottom:38px;
    }
    .center-heading h2 {
        font-size:43px;
    }
    .center-heading>p:last-child {
        font-size:12px;
    }
    .plans {
        grid-template-columns:1fr;
        gap:32px;
        max-width:450px;
    }
    .plan {
        padding:29px;
    }
    .plan h3 {
        font-size:42px;
    }
    .plan-overline {
        font-size:9px;
    }
    .plan-intro {
        font-size:12px;
        margin-bottom:17px;
        min-height:0;
    }
    .plan:not(.plan-premium)>.price {
        margin-top:8px;
    }
    .plan-billing {
        font-size:11px;
        min-height:0;
    }
    .plan-commission {
        font-size:12px;
    }
    .plan .check-list {
        font-size:12px;
    }
    .plan>.button {
        font-size:12px;
    }
    .billing-toggle button {
        font-size:10px;
        min-height:34px;
    }
    .pricing-clarity {
        grid-template-columns:1fr 1fr;
        gap:17px;
        padding:20px 0;
    }
    .pricing-clarity>div {
        grid-column:1/-1;
    }
    .pricing-clarity>p {
        font-size:11px;
    }
    .pricing-fineprint {
        font-size:11px;
        line-height:1.8;
    }
    .faq-layout {
        grid-template-columns:1fr;
        gap:32px;
    }
    .faq-intro {
        position:static;
    }
    .faq-intro h2 {
        font-size:45px;
    }
    .faq-intro>p:not(.eyebrow) {
        font-size:13px;
        max-width:380px;
        margin-bottom:19px;
    }
    .faq-item summary {
        font-size:12px;
        gap:12px;
        padding-block:20px;
    }
    .faq-answer {
        font-size:13px;
        line-height:1.9;
        padding-left:24px;
        padding-right:16px;
    }
    .faq-number {
        font-size:8px;
    }
    .invitation-section {
        margin-block:44px;
        padding:49px 25px 38px;
        border-radius:5px;
    }
    .invitation-section .eyebrow {
        font-size:8px;
        max-width:220px;
        margin-inline:auto;
    }
    .invitation-section h2 {
        font-size:54px;
        position:relative;
    }
    .invitation-section>p:not(.eyebrow) {
        font-size:12px;
        max-width:340px;
        position:relative;
    }
    .invitation-art {
        opacity:.2;
        left:-18px;
        top:36%;
        width:110px;
    }
    .invitation-section::after {
        font-size:55px;
        right:-8px;
        top:13%;
        opacity:.6;
    }
    .invitation-note {
        font-size:9px;
    }
    .site-footer {
        gap:24px;
        padding-bottom:30px;
    }
    .site-footer nav {
        flex-direction:column;
        gap:9px;
        font-size:10px;
        padding-top:2px;
        align-items:flex-start;
    }
    .footer-origin {
        width:100%;
        text-align:left;
        border-top:1px solid var(--line);
        padding-top:19px;
        font-size:10px;
    }
    .footer-origin br {
        display:none;
    }
}

@media(max-width:380px) {
    .wrap {
        width:calc(100% - 32px);
    }
    .site-header {
        gap:8px;
    }
    .site-header .button {
        font-size:8px;
        padding:9px;
        gap:6px;
    }
    .brand>span {
        font-size:30px;
    }
    .brand img {
        width:27px;
        height:27px;
    }
    .hero h1 {
        font-size:56px;
    }
    .hero .eyebrow {
        font-size:7px;
        letter-spacing:1px;
    }
    .hero-actions {
        gap:15px;
    }
    .hero-actions>.button {
        font-size:10px;
        padding:14px;
    }
    .hero-actions>.text-link {
        font-size:9px;
    }
    .shop-scene {
        min-height:0;
    }
    .shop-scene {
        padding-top:79px;
        padding-bottom:65px;
    }
    .example-store {
        padding:14px 16px 19px;
    }
    .example-nav>span:first-child {
        font-size:17px;
    }
    .example-nav>span:last-child {
        font-size:6px;
    }
    .example-story p {
        font-size:25px;
    }
    .example-product {
        gap:13px;
    }
    .example-product-copy p {
        font-size:24px;
    }
    .example-product-copy>span:not(.example-kicker):not(.example-buy) {
        font-size:6px;
    }
    .example-kicker {
        font-size:5px;
    }
    .example-buy {
        font-size:6px;
    }
    .floating-note strong {
        font-size:8px;
    }
    .sale-note {
        top:49px;
    }
    .parcel-note svg {
        width:77px;
    }
    .parcel-note>span {
        font-size:8px;
    }
    .scene-label {
        font-size:11px;
    }
    .scene-footer {
        font-size:9px;
        gap:10px;
    }
    .editor-paper {
        inset:45px 28px 48px;
    }
    .editor-caption {
        font-size:11px;
    }
    .editor-illustration {
        min-height:427px;
    }
    .plan {
        padding:23px;
    }
    .plan-commission {
        font-size:11px;
    }
    .billing-toggle button {
        padding-inline:8px;
        font-size:9px;
    }
    .premium-tag {
        font-size:7px;
    }
    .benefit-list {
        font-size:8px;
    }
    .pricing-clarity {
        gap:13px;
    }
    .pricing-clarity>p>strong {
        font-size:11px;
    }
    .site-footer nav {
        font-size:9px;
    }
    .sales-step h3 {
        font-size:29px;
    }
    .step-top svg {
        width:67px;
    }
    .step-number {
        right:71px;
    }
    .center-heading h2 {
        font-size:39px;
    }
}

@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto;
    }
    *,*::before,*::after {
        animation:none!important;
        transition:none!important;
    }
}

/* Practical author tools complement the visual customization overview. */
.author-tools {
    grid-column:1 / -1;
    border-top:1px solid var(--line);
    padding-top:42px;
    margin-top:-35px;
}
.author-tools-heading {
    margin-bottom:30px;
}
.author-tools-heading .eyebrow {
    margin-bottom:12px;
}
.author-tools-heading h3 {
    font-size:37px;
    margin-bottom:0;
}
.author-tools-grid {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:32px 42px;
}
.author-tools-grid article {
    border-top:1px solid var(--line);
    padding-top:19px;
}
.tool-number {
    color:var(--clay);
    font:400 22px/1 var(--serif);
}
.author-tools-grid h4 {
    font:600 15px/1.6 var(--sans);
    margin:12px 0 9px;
}
.author-tools-grid p {
    color:var(--muted);
    font-size:12px;
    line-height:1.9;
    margin:0;
}
.tool-plan {
    display:inline-block;
    vertical-align:middle;
    color:var(--green);
    background:var(--sage);
    border:1px solid var(--line);
    border-radius:3px;
    padding:1px 6px;
    margin-left:3px;
    font-size:9px;
    font-weight:400;
}
.plan-domain {
    display:block;
    color:var(--muted);
    margin-top:4px;
    font-size:10px;
    overflow-wrap:anywhere;
}
.faq-answer p + p {
    margin-top:15px;
}
@media(max-width:900px) {
    .author-tools-grid {
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:28px;
    }
    .author-tools {
        margin-top:0;
    }
    .benefit-list svg {
        width:19px;
        height:19px;
    }
}
@media(max-width:700px) {
    .author-tools {
        padding-top:30px;
    }
    .author-tools-heading h3 {
        font-size:34px;
    }
    .author-tools-grid {
        grid-template-columns:1fr;
        gap:23px;
    }
    .author-tools-grid article {
        padding-left:34px;
        position:relative;
    }
    .tool-number {
        position:absolute;
        left:0;
        top:25px;
        font-size:20px;
    }
    .author-tools-grid h4 {
        margin-top:0;
        font-size:14px;
    }
    .author-tools-grid p {
        font-size:13px;
    }
}

@media print {
    body {
        background:white;
        color:black;
    }
    .site-header,.hero-visual,.editor-illustration,.invitation-section,.button,.billing-toggle,.skip-link {
        display:none!important;
    }
    .wrap {
        width:100%;
    }
    .section {
        padding-block:25px;
    }
    .hero,.ownership,.faq-layout {
        display:block;
    }
    .hero {
        padding-block:20px;
    }
    .hero h1 {
        font-size:42px;
    }
    .faq-intro {
        position:static;
    }
    .faq-item {
        break-inside:avoid;
    }
    .faq-item::details-content {
        content-visibility:visible;
    }
    .faq-answer {
        display:block;
    }
    .plans,.sales-steps {
        break-inside:avoid;
    }
    h2 {
        font-size:32px;
    }
    .site-footer {
        padding-top:25px;
    }
}

/* Help visitors assess the real author workspace and the cost of direct sales. */
.demo-note{max-width:390px;font-size:11px!important;line-height:1.8!important;color:var(--muted);margin:12px 0 0}
.pricing-choice{max-width:790px;margin:35px auto 22px;text-align:center}
.pricing-choice h3{font-size:28px;margin-bottom:12px;letter-spacing:-.6px}
.pricing-choice p{font-size:13px;line-height:1.9;color:var(--muted)}
.pricing-choice strong{color:var(--green)}
.faq-source{font-size:12px;line-height:1.7;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.pricing-choice{text-align:left;margin-top:27px}.pricing-choice p{font-size:12px}.pricing-choice h3{font-size:27px}}
