@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700;800&family=Playfair+Display:wght@400;500;600;700&display=swap');
:root{--ink:#3a3037;--muted:#766972;--berry:#8f2f59;--rose:#b95b78;--rose-dark:#943b5d;--pink:#f7dfe2;--blush:#fff0ee;--cream:#fffaf6;--warm:#f8f1eb;--border:#efdfe0;--white:#fff;--shadow:0 18px 60px rgba(113,44,70,.09);--radius:24px;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffaf8;color:var(--ink);font-family:'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;line-height:1.68;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}svg{vertical-align:middle}.container{width:min(var(--max),calc(100% - 52px));margin-inline:auto}.eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--berry);font-weight:800}.heading{font:500 clamp(31px,3.6vw,48px)/1.17 'Playfair Display',Georgia,serif;letter-spacing:-.035em;color:var(--berry);margin:11px 0 18px}.heading.small{font-size:clamp(26px,3vw,40px)}.section{padding:82px 0}.soft{background:linear-gradient(125deg,#fff3f1 0%,#fffbf9 65%,#fcece9 100%)}.line{width:53px;height:3px;background:#cb6b89;border-radius:3px;margin:20px 0}.lead{font-size:17px;color:var(--muted);line-height:1.8}.muted{color:var(--muted)}.muted-small{font-size:13px;color:var(--muted)}.small-note{font-size:12px;line-height:1.6;color:#927983}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 25px rgba(80,40,60,.04)}.icon{width:22px;height:22px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon.lg{width:29px;height:29px}.icon.xl{width:35px;height:35px}.btn{display:inline-flex;gap:12px;align-items:center;justify-content:center;border-radius:99px;background:linear-gradient(135deg,#c56580,#8b3159);color:white;font-size:13px;font-weight:700;padding:14px 23px;border:1px solid transparent;line-height:1.2;transition:transform .2s,box-shadow .2s,filter .2s;box-shadow:0 9px 18px rgba(157,61,97,.12);text-align:center}.btn:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 12px 25px rgba(157,61,97,.2)}.btn:focus-visible,.link:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #e3a6bd;outline-offset:3px}.btn.outline{color:var(--berry);border-color:#c8879d;background:rgba(255,255,255,.6);box-shadow:none}.btn.ghost{background:#fff;color:var(--berry);box-shadow:none}.btn.sm{padding:11px 17px;font-size:12px}.btn .icon{width:18px;height:18px}.link{color:var(--berry);font-size:13px;font-weight:800;display:inline-flex;align-items:center;gap:9px}.link:hover{text-decoration:underline}.link .icon{height:15px;width:15px}.topbar{z-index:30;position:sticky;top:0;background:rgba(255,251,249,.96);backdrop-filter:blur(18px);border-bottom:1px solid #f5e8e7}.topbar-inner{display:flex;align-items:center;justify-content:space-between;min-height:86px;gap:24px}.brand{display:flex;gap:12px;align-items:center;min-width:220px}.brand-mark{width:45px;height:45px;color:#d16b8c;border:1px solid #ebbdcb;background:#fff0f2;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.brand-mark .icon{width:28px;height:28px}.brand-name{font:600 26px/1.08 'Playfair Display',Georgia,serif;color:#913c61;letter-spacing:-.025em}.brand-caption{display:block;color:#b65b7a;font-weight:700;font-size:9px;line-height:1.4;letter-spacing:.04em}.nav{display:flex;align-items:center;gap:30px}.nav a{font-size:13px;font-weight:650;color:#55464e}.nav a:hover,.nav a.active{color:#a73d66}.nav a.active{border-bottom:2px solid #c35c81;padding-bottom:6px}.menu-btn{display:none;border:0;background:#fff3f3;border-radius:12px;width:43px;height:43px;color:var(--berry);align-items:center;justify-content:center}.hero{position:relative;background:radial-gradient(ellipse at 16% 15%,#f6ddd7 0,transparent 52%),radial-gradient(ellipse at 95% 65%,#fce8e1 0,transparent 35%),#fff9f4;overflow:hidden}.hero::after{content:'';position:absolute;right:-70px;top:35px;width:340px;height:390px;border:2px solid rgba(215,148,157,.12);border-radius:49% 51% 52% 48% / 55% 36% 64% 45%;transform:rotate(28deg);pointer-events:none}.hero-inner{min-height:580px;display:grid;grid-template-columns:47% 53%;align-items:center;position:relative;z-index:1}.hero-art{align-self:stretch;display:flex;align-items:flex-end;position:relative}.hero-art:before{content:'';position:absolute;width:84%;height:75%;left:6%;top:11%;border-radius:55% 45% 48% 52% / 55% 51% 49% 45%;background:linear-gradient(145deg,#f2cbc6,#edd8c8);transform:rotate(-8deg);filter:blur(2px)}.hero-art:after{content:'';position:absolute;left:1%;bottom:8%;width:100px;height:100px;border:1px solid rgba(151,60,89,.22);border-radius:50%}.hero-photo{position:relative;z-index:1;max-height:525px;width:min(96%,510px);height:485px;object-fit:cover;object-position:center 43%;border-radius:47% 48% 14% 17% / 29% 32% 8% 10%;box-shadow:0 24px 60px rgba(128,68,78,.15);margin-left:10px}.hero-text{padding:74px 15px 80px 18px}.hero-text h1{font:500 clamp(45px,4.7vw,68px)/1.11 'Playfair Display',Georgia,serif;color:#873754;letter-spacing:-.043em;margin:16px 0 18px;max-width:640px}.hero-text p{font-size:16px;line-height:1.82;color:#6c6069;max-width:550px;margin:0 0 28px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.hero-eyebrow{letter-spacing:.24em}.signature{position:absolute;right:14px;top:68px;z-index:2;font:italic 21px/1.4 'Playfair Display',Georgia,serif;color:#bd6c83;transform:rotate(-5deg);text-align:right;opacity:.82}.photo-credit{position:absolute;left:32px;bottom:19px;z-index:2;background:rgba(255,255,255,.9);color:#78535c;border-radius:25px;font-size:10px;padding:7px 11px;box-shadow:0 3px 18px rgba(0,0,0,.04)}.feature-wrap{position:relative;z-index:5;margin-top:-34px}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);align-items:stretch;background:#fff;box-shadow:var(--shadow);border:1px solid #f6e9e7;border-radius:18px;padding:22px 12px}.feature{display:flex;align-items:center;gap:14px;padding:7px 20px;border-right:1px solid #f3e3e1}.feature:last-child{border-right:none}.round-icon{width:49px;height:49px;display:grid;place-items:center;border-radius:50%;background:#ffe8eb;color:#b34d73;flex-shrink:0}.feature h4{font-size:13px;line-height:1.25;margin:0 0 4px;font-weight:750}.feature span{font-size:11px;color:#87757c;line-height:1.4;display:block}.about-grid{display:grid;grid-template-columns:1.1fr .75fr .85fr;gap:28px;align-items:stretch}.about-copy{align-self:center}.about-copy p{color:#766972;margin:0 0 22px}.about-photo{border-radius:24px;overflow:hidden;min-height:365px;background:#f5d9d2}.about-photo img{width:100%;height:100%;object-fit:cover}.quote-card{background:linear-gradient(165deg,#fff5f3,#fae9e7);border-radius:24px;padding:26px 27px;display:flex;flex-direction:column;justify-content:space-between}.quote-mark{font:800 67px/1 'Playfair Display',Georgia,serif;color:#e7b8c3;max-height:47px}.quote-card blockquote{font:400 20px/1.5 'Playfair Display',Georgia,serif;color:#70515c;margin:0}.quote-card em{color:#b6607c;font:italic 22px 'Playfair Display',Georgia,serif;text-align:right;margin-top:20px}.qualifications{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.qualification{border:1px solid #f0dfe0;background:#fff7f5;border-radius:90px;padding:8px 12px;color:#81536a;font-size:12px;display:flex;align-items:center;gap:7px;font-weight:650}.qualification .icon{height:15px;width:15px}.section-title-row{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:23px}.section-title-row .heading{margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.service{padding:25px 22px;display:flex;flex-direction:column;gap:12px;min-height:270px;background:linear-gradient(160deg,#fff,#fff9f8)}.service h3{font-size:16px;line-height:1.35;margin:0;color:#553d48}.service p{font-size:12px;color:#82747b;line-height:1.7;margin:0 0 10px}.service .link{margin-top:auto}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post{overflow:hidden}.post img{width:100%;height:180px;object-fit:cover}.post-body{padding:20px}.post-topic{font-size:10px;text-transform:uppercase;letter-spacing:.15em;font-weight:800;color:#b05376}.post h3{font:600 22px/1.32 'Playfair Display',Georgia,serif;color:#7f3557;margin:7px 0 9px}.post p{font-size:13px;color:#85767d;margin:0 0 16px}.post-meta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f3e9e8;padding-top:14px}.post-meta span{font-size:11px;color:#a08f94}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.faq-item{border:1px solid #efdddd;background:#fff;border-radius:12px;margin:8px 0;overflow:hidden}.faq-item summary{cursor:pointer;font-weight:600;font-size:13px;padding:16px 18px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'+';color:var(--berry);font-size:20px;line-height:1;font-weight:400}.faq-item[open] summary::after{content:'−'}.faq-item p{border-top:1px solid #f5e9e9;padding:0 18px 16px;margin:0;color:var(--muted);font-size:13px}.side-links{background:linear-gradient(130deg,#fcece9,#fff9f8);border:1px solid #f0dfe1;border-radius:20px;padding:33px;display:flex;align-items:center;justify-content:space-between;gap:20px}.side-links .heading{font-size:31px}.side-links .icon.xl{width:74px;height:74px;color:#cb7a99}.warm-banner{background:linear-gradient(115deg,#f9e1df,#fff5f0);padding:37px 0}.warm-banner-inner{display:flex;justify-content:space-between;align-items:center;gap:28px}.warm-banner .heading{margin:0 0 5px;font-size:32px}.warm-banner p{margin:0;color:#76676e}.footer{padding:55px 0 27px;background:#fffaf7}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:30px}.footer-contact{display:flex;align-items:flex-start;gap:11px}.footer-contact .round-icon{width:35px;height:35px}.footer-contact .icon{width:17px;height:17px}.footer-contact b{font-size:12px;display:block;color:#654855;word-break:break-word}.footer-contact span{font-size:11px;color:#8c7a81}.footer-bottom{margin-top:43px;border-top:1px solid #f1e3e4;padding-top:19px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#a38f98}.page-head{padding:88px 0 56px;background:linear-gradient(115deg,#fff0ed,#fffaf7)}.page-head .heading{max-width:740px;margin-bottom:15px}.page-head p{max-width:680px;font-size:16px;color:#766a70;margin:0}.crumb{font-size:12px;color:#a65c76;font-weight:700;margin-bottom:12px}.links-page{min-height:100svh;background:radial-gradient(ellipse at 5% 10%,#f8dadc,transparent 40%),radial-gradient(ellipse at 95% 100%,#f5e5e6,transparent 40%),#fffaf8;display:flex;align-items:center;justify-content:center;padding:45px 20px}.links-card{width:min(470px,100%);padding:37px 32px 25px;background:#ffffffdc;backdrop-filter:blur(15px);border:1px solid #f0dddf;border-radius:32px;box-shadow:var(--shadow);text-align:center}.links-avatar{height:114px;width:114px;object-fit:cover;border-radius:50%;border:5px solid #fff;box-shadow:0 8px 34px rgba(169,97,117,.19);margin:0 auto 17px}.links-card h1{font:600 34px 'Playfair Display',Georgia,serif;color:var(--berry);margin:0}.links-card .bio{font-size:13px;color:var(--muted);margin:8px auto 26px;max-width:315px}.links-stack{display:grid;gap:12px}.links-stack a{display:flex;gap:14px;align-items:center;text-align:left;padding:15px 18px;border:1px solid #eacdd7;background:#fffaf9;border-radius:14px;color:#71465b;font-weight:700;font-size:14px;transition:transform .2s,background .2s}.links-stack a:hover{background:#ffecef;transform:translateY(-2px)}.links-stack .icon{width:22px;height:22px}.links-stack a span{flex:1}.links-social{display:flex;justify-content:center;gap:16px;margin-top:27px}.links-social a{display:grid;place-items:center;background:#fae4e8;border-radius:50%;height:38px;width:38px;color:var(--berry)}.links-footer{margin-top:27px;font-size:11px;color:#a18c95}.article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(0,300px);gap:45px;align-items:start}.article-layout h2{font:600 28px 'Playfair Display',Georgia,serif;color:#893e60;margin-top:33px}.article-layout p,.article-layout li{font-size:16px;color:#6d6068;line-height:1.95}.article-side{position:sticky;top:114px;padding:22px}.article-side h3{font:600 21px 'Playfair Display',Georgia,serif;color:var(--berry);margin:0 0 13px}.article-side a{display:block;padding:10px 0;font-size:13px;color:#79656f;border-bottom:1px solid #f4e8e8}.article-cover{height:300px;width:100%;object-fit:cover;border-radius:20px;margin-bottom:26px}.disclaimer{border:1px solid #efd4da;background:#fff2f3;color:#785363;padding:14px 17px;border-radius:12px;font-size:12px}.demo-ribbon{background:#7f3c5a;color:#fff;text-align:center;padding:10px 14px;font-size:12px;font-weight:650}.demo-ribbon a{color:#ffe8ed;text-decoration:underline}.pricing-wrap{padding:72px 0}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.price-card{background:white;border:1px solid #ead9dd;border-radius:24px;padding:28px 24px;display:flex;flex-direction:column;position:relative;box-shadow:0 9px 36px rgba(100,44,62,.045)}.price-card.featured{border:2px solid #bb6684;box-shadow:0 18px 42px rgba(156,59,93,.14);transform:translateY(-8px)}.price-card h3{font:600 30px 'Playfair Display',Georgia,serif;color:var(--berry);margin:5px 0 8px}.price-card p{font-size:13px;color:#81747b;min-height:42px;margin:0 0 16px}.price-old{text-decoration:line-through;color:#a18d95;font-size:13px}.price-value{font-size:39px;letter-spacing:-.05em;color:#873855;font-weight:800}.price-value small{font-size:14px;letter-spacing:0}.price-month{font-size:12px;color:#856a78;padding-bottom:20px;border-bottom:1px solid #eee0e4}.price-list{padding:13px 0 22px;list-style:none;margin:0;flex:1}.price-list li{display:flex;align-items:flex-start;gap:8px;margin:10px 0;font-size:13px}.price-list li:before{content:'✓';color:#af5375;font-weight:900}.pricing-note{background:#fff3f2;border:1px solid #f2d6de;padding:19px 22px;border-radius:16px;margin-top:24px;color:#765962;font-size:13px}.compare-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:20px}.compare-table th{background:#f9e6e9;color:#6e3c53;text-align:left}.compare-table td,.compare-table th{padding:13px 14px;border-bottom:1px solid #f3e7e9}.compare-table td:first-child{font-weight:600}.check{color:#9f4868;font-weight:800}.no{color:#b4a5a9}.input,textarea.input{width:100%;display:block;border:1px solid #eacbd6;border-radius:11px;background:#fff;padding:12px 13px;font-size:14px;color:#57444c}.field{display:grid;gap:5px;font-size:13px;font-weight:700;color:#754961;margin:16px 0}.field textarea{min-height:120px;resize:vertical}.admin-layout{display:grid;grid-template-columns:1fr 1fr;gap:25px}.admin-panel{padding:28px}.admin-panel h3{margin-top:0;color:var(--berry);font:600 27px 'Playfair Display',Georgia,serif}.status{border-radius:12px;padding:12px 14px;margin-top:13px;background:#effaf3;color:#336845;font-size:13px}.muted-status{background:#fff5f1;color:#815d60}.stars{display:flex;gap:5px}.stars button{border:none;background:transparent;font-size:34px;color:#d4c7cc;padding:0 3px;line-height:1.4}.stars button.on{color:#e9a550}.review-item{border:1px solid #f1dde2;border-radius:11px;padding:12px;margin-top:10px;font-size:13px}.review-item p{margin:5px 0}.review-item button{font-size:11px;padding:7px 9px;border-radius:8px;background:#ffe4eb;color:#85445e;border:0}.custom-post{border:1px solid #eddddf;border-radius:18px;padding:24px;background:#fff8f8;grid-column:span 1}.custom-post h3{color:var(--berry);font:600 22px 'Playfair Display',Georgia,serif}.custom-post small{font-size:12px;color:var(--muted)}.empty{font-size:13px;color:#806b75}.photo-warning{font-size:11px;color:#8b6b76;margin-top:12px}.hide{display:none!important}
@media(max-width:1020px){.nav{gap:16px}.brand{min-width:205px}.topbar .btn{padding:11px 14px}.hero-inner{min-height:510px}.hero-text h1{font-size:51px}.feature{padding:7px 10px;gap:9px}.feature .round-icon{width:38px;height:38px}.feature h4{font-size:11px}.feature span{font-size:10px}.service-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:1fr 1fr}.quote-card{grid-column:span 2;min-height:160px}.quote-card blockquote{font-size:20px}.article-layout{grid-template-columns:1fr 240px}}
@media(max-width:760px){.container{width:min(100% - 32px,var(--max))}.topbar-inner{min-height:71px}.brand{min-width:0}.brand-name{font-size:22px}.brand-caption{font-size:8px}.brand-mark{width:39px;height:39px}.topbar .nav{display:none;position:absolute;left:0;right:0;top:70px;padding:20px 22px 25px;background:#fffaf8;border-bottom:1px solid #f3dfe5;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start;gap:18px}.topbar .nav.open{display:flex}.topbar .btn{display:none}.menu-btn{display:flex}.hero-inner{display:flex;flex-direction:column;min-height:0}.hero-art{order:2;width:100%;min-height:325px;justify-content:center}.hero-photo{height:320px;max-height:320px;max-width:350px;width:85%;margin:0;border-radius:38% 38% 10% 10% / 33% 33% 7% 7%}.hero-art:before{width:70%;height:92%;left:15%;top:3%}.hero-text{order:1;padding:59px 4px 20px}.hero-text h1{font-size:clamp(40px,10vw,55px)}.hero-text p{font-size:14px}.hero-actions .btn{width:auto}.signature{display:none}.photo-credit{left:50%;transform:translateX(-50%);bottom:9px;white-space:nowrap}.feature-wrap{margin-top:0}.feature-strip{grid-template-columns:1fr 1fr;border-radius:0 0 20px 20px;padding:14px}.feature{border-right:0;padding:10px;gap:10px}.feature .round-icon{width:38px;height:38px}.feature h4{font-size:12px}.section{padding:61px 0}.heading{font-size:36px}.about-grid,.faq-grid,.admin-layout{grid-template-columns:1fr}.about-photo{min-height:330px}.quote-card{grid-column:span 1;min-height:220px}.service-grid{grid-template-columns:1fr 1fr}.service{min-height:250px}.blog-grid{grid-template-columns:1fr}.post img{height:220px}.section-title-row{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.warm-banner-inner{align-items:start;flex-direction:column}.article-layout{grid-template-columns:1fr}.article-side{position:static}.price-grid{grid-template-columns:1fr}.price-card.featured{transform:none}.compare-scroll{overflow-x:auto}.compare-table{min-width:580px}.page-head{padding:58px 0 44px}.links-card{padding:30px 21px}.custom-post{grid-column:auto}}
@media(max-width:470px){.brand{gap:8px}.brand-name{font-size:20px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-text h1{font-size:42px}.feature-strip{grid-template-columns:1fr 1fr}.feature{align-items:flex-start;padding:12px 5px}.feature span{font-size:10px}.feature h4{font-size:11px}.round-icon{width:42px;height:42px}.service-grid{grid-template-columns:1fr}.service{min-height:210px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.about-photo{min-height:290px}.side-links{flex-direction:column;align-items:start}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
