:root{--paper:#faf7f1;--ink:#332b29;--wine:#763c4d;--muted:#736c66;--line:#dfd7cd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #b06d83;outline-offset:5px}.testbar{background:#efe6df;text-align:center;padding:9px 20px;font-size:12px;letter-spacing:.5px}header{max-width:1280px;margin:auto;padding:25px 45px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font:32px Georgia,serif;display:flex;align-items:center;gap:12px}.brand b{font:30px Georgia,serif;background:var(--wine);color:white;width:43px;height:43px;border-radius:50%;text-align:center;line-height:38px}nav{display:flex;gap:30px;font-size:14px}nav a:hover,.text-link:hover{color:var(--wine);text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;gap:35px;background:var(--wine);color:#fff;padding:15px 25px;border-radius:5px;font-size:15px;transition:background .2s}.button:hover{background:#552939}.button.small{padding:11px 18px;font-size:14px}.hero{max-width:1280px;margin:auto;padding:55px 65px 80px;display:grid;grid-template-columns:1.12fr 1fr;gap:50px;align-items:center}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2px;color:var(--wine);margin:0 0 23px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.14}h1{font-size:clamp(40px,4.4vw,63px);letter-spacing:-2px;margin-bottom:25px}em{font-weight:400;color:var(--wine)}.lead{max-width:420px;color:var(--muted);font-size:18px;margin-bottom:30px}.subtle{font-size:12px;color:var(--muted);margin:16px 0 0}.hero-art{position:relative;display:flex;justify-content:center;padding:25px 20px 35px}.orbit{position:absolute;inset:3% -2% 0;background:#eee5dd;border-radius:48% 48% 3px 3px;transform:rotate(5deg)}.sample-card{position:relative;text-align:center;background:#fffdf8;padding:30px 27px;width:340px;box-shadow:0 14px 35px #65453915;transform:rotate(-3deg)}.sample-card .eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:17px}.sample-card img{width:165px;height:178px;object-fit:cover;border-radius:85px 85px 0 0}.sample-card p{font-size:10px;margin:15px 0 8px}.sample-card h2{font-size:36px;margin:8px 0 18px}.sample-card i{font-size:25px;color:var(--wine)}.sample-card small{font-size:10px;color:var(--muted)}.sample-card .serif{font:19px Georgia,serif;margin:12px 0}.hairline{width:34px;height:1px;background:#bc9c79;margin:auto}.floating-note{position:absolute;bottom:56px;left:-28px;display:flex;gap:13px;align-items:center;background:white;border:1px solid #eee5de;padding:14px 19px;box-shadow:0 9px 30px #43291b0f;font-size:12px;border-radius:6px;transform:rotate(-3deg)}.floating-note>span{background:#edf2e8;color:#47663c;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.floating-note small{display:block;color:var(--muted);font-size:10px}.art-caption{position:absolute;bottom:1px;right:5px;letter-spacing:2px;font-size:8px}.collection,.steps{max-width:1190px;margin:auto;padding:75px 35px}.collection{border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px}.section-heading h2{font-size:38px;max-width:550px;margin-bottom:0}.section-heading p:last-child{color:var(--muted);font-size:14px}.filters{display:flex;gap:7px;margin:30px 0 28px}.filters button{background:transparent;border:1px solid var(--line);border-radius:30px;padding:9px 26px;font-size:14px}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.models{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.model-art{background:#ece6db;padding:30px;display:flex;justify-content:center;min-height:300px}.mini{width:190px;background:#fffdf8;text-align:center;padding:25px 13px;color:#443a31;box-shadow:0 10px 18px #00000008}.mini span{font-size:8px;letter-spacing:1px;display:block}.mini img{width:82px;height:96px;object-fit:cover;border-radius:50px 50px 0 0;margin:15px auto}.mini h3{font:25px Georgia,serif;margin:0 0 14px}.mini p{font-size:9px;margin-bottom:8px}.rose.model-art{background:#eedde0}.rose .mini{background:#fff0f2;color:#803d55}.night.model-art{background:#d9deda}.night .mini{background:#263c35;color:#eee1bd}.model-footer{padding:17px 0;display:flex;justify-content:space-between;align-items:center;gap:12px}.model-footer h3{font:22px Georgia,serif;margin:0 0 3px}.model-footer p{font-size:12px;color:var(--muted);margin:0}.model-footer a{font-size:13px;border-bottom:1px solid var(--wine);padding:5px 0;white-space:nowrap;color:var(--wine)}.collection-note{font-size:12px;color:var(--muted);margin-top:15px}.organize{background:#eee9e0;padding:75px max(35px,calc((100vw - 1120px)/2));display:grid;grid-template-columns:1fr 1fr;gap:90px}.organize h2,.steps h2{font-size:38px}.organize>div>p:not(.eyebrow){color:var(--muted);max-width:440px}.text-link{font-size:14px;border-bottom:1px solid var(--wine);padding-bottom:5px}.features article{display:flex;gap:22px;padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid #d9d1c7}.features article:last-child{border:0;margin:0;padding:0}.features article>span{font:20px Georgia,serif;color:#9f7d70}.features h3{font-size:17px;margin-bottom:7px;font-weight:500}.features p{font-size:14px;color:var(--muted);margin:0}.steps{text-align:center;padding-top:85px;padding-bottom:80px}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;text-align:left;margin-top:45px}.steps-grid b{font:20px Georgia,serif;color:#a58576}.steps-grid h3{font:23px Georgia,serif;margin:16px 0 12px}.steps-grid p{font-size:14px;color:var(--muted)}.next-note{border-top:1px solid var(--line);padding-top:23px;margin-top:25px;font-size:13px;color:var(--muted)}.last-call{text-align:center;background:#eaddd8;padding:60px 25px}.last-call h2{font-size:40px}.last-call .eyebrow{margin-bottom:16px}footer{max-width:1280px;padding:35px 45px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer small{font-size:12px;color:var(--muted);margin:0}footer .brand{font-size:27px}footer .brand b{width:35px;height:35px;font-size:25px;line-height:31px}@media(max-width:900px){header{padding:20px 25px}nav{display:none}.hero{padding:35px 30px 55px;gap:25px}.hero-art{padding-left:10px;padding-right:10px}.sample-card{width:290px}.floating-note{left:-10px;font-size:10px;padding:10px}.organize{gap:35px}.model-art{padding:20px 12px}.section-heading{align-items:start}.section-heading>p{display:none}footer{flex-wrap:wrap}.steps-grid{gap:25px}}@media(max-width:620px){.testbar{font-size:10px}.testbar span{display:block;font-size:10px;margin-top:3px}header{padding:18px 20px}.brand{font-size:27px;gap:8px}.brand b{width:36px;height:36px;font-size:26px;line-height:33px}.button.small{font-size:12px;padding:10px}.hero{grid-template-columns:1fr;padding:35px 25px 55px;gap:25px}.hero-copy{text-align:center}.eyebrow{font-size:10px}h1{font-size:43px;letter-spacing:-1.5px}.lead{font-size:16px}.hero-art{width:300px;max-width:90%;margin:10px auto 0}.sample-card{width:260px;padding:25px 18px}.sample-card img{height:145px;width:135px}.sample-card h2{font-size:29px}.floating-note{left:-25px;bottom:45px}.collection,.steps{padding:45px 24px}.section-heading h2,.organize h2,.steps h2{font-size:32px}.models{grid-template-columns:1fr;gap:20px}.model-art{min-height:285px}.mini{width:195px}.model-footer{padding-top:14px}.model-footer a{font-size:14px}.organize{grid-template-columns:1fr;padding:45px 24px;gap:40px}.steps-grid{grid-template-columns:1fr;gap:20px;margin-top:30px}.steps-grid h3{margin-top:8px}.last-call h2{font-size:33px}footer{padding:30px 24px;gap:15px;flex-direction:column;text-align:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* SofInvite brand assets, preserved as supplied */
header{padding-top:12px;padding-bottom:12px}.brand{flex-shrink:0}.brand .sofinvite-logo{display:block;width:220px;height:auto;border-radius:6px}footer .brand .sofinvite-logo{width:180px}header nav{gap:24px}@media(max-width:620px){header{gap:12px;padding:12px 16px}.brand .sofinvite-logo{width:150px}header .button.small{font-size:12px;padding:9px 10px;max-width:145px;text-align:center}}@media(max-width:360px){.brand .sofinvite-logo{width:125px}header .button.small{max-width:125px}}
