*{box-sizing:border-box}html,body{background:#fbeaea}body{margin:0;font-family:'Lato',system-ui,sans-serif;color:#835a61;line-height:1.75}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;color:#835a61;line-height:1.2}h1{font-size:2.4rem}h2{font-size:1.9rem;margin-top:2.5rem}
.script{font-family:'Great Vibes',cursive;color:#9a4f60;font-size:1.7rem}a{color:#9a4f60}
main a,footer a{display:inline-block;min-height:44px;line-height:44px}main p a:not(.btn),main li a:not(.btn){display:inline;min-height:0;line-height:inherit;padding:.55em 0}
header{padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.6rem;border-bottom:1px solid #f0d3d8}
header .brand img{height:68px;width:auto;display:block}.subtle-h1{font-family:'Lato',system-ui,sans-serif;font-size:.95rem;font-weight:700;letter-spacing:.08em;color:#9a4f60;margin:.6rem 0 0}.card-h{font-size:1.5rem;margin-top:0}
.pills{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem}
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem 1.2rem;border-radius:999px;background:#a35a6b;color:#fff;text-decoration:none;font-weight:700;font-size:.95rem}
.pill.primary{font-size:1.05rem;min-height:50px;padding:.7rem 1.6rem;box-shadow:0 4px 14px rgba(163,90,107,.25)}.pill.outline{background:transparent;color:#9a4f60;border:1.5px solid #9a4f60;font-size:.9rem;padding:.5rem 1rem}.btn.big{min-height:58px;padding:.6rem 2.6rem;justify-content:center;font-size:1.15rem;box-shadow:0 6px 18px rgba(163,90,107,.25)}.cta-note{font-size:.9rem;color:#835a61;margin-top:.4rem}
.txt{display:flex;flex-wrap:wrap;gap:0 1.1rem;justify-content:center}.txt a{white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;font-size:.95rem}
@media(max-width:520px){.pills{flex-direction:row;flex-wrap:wrap;width:100%}.pill.primary{width:100%;order:-1}.pill.outline{width:100%;white-space:nowrap}}
@media(min-width:900px){header{flex-direction:row;justify-content:space-between;flex-wrap:wrap}}
main{max-width:1320px;margin:auto;padding:2rem clamp(1.1rem,3vw,2rem) 4rem}
.hero{text-align:center;padding:3rem 1rem 1rem}.hero img{width:min(420px,80vw);height:auto}
.hero .tag{letter-spacing:.2em;text-transform:uppercase;font-size:.85rem;color:#9a4f60}
.btn{display:inline-flex;align-items:center;min-height:44px;background:#a35a6b;color:#fff;padding:.8rem 1.5rem;border-radius:999px;text-decoration:none;font-weight:700;margin:.3rem;border:0;font-size:1rem;cursor:pointer}.btn.alt{background:transparent;color:#9a4f60;border:1.5px solid #9a4f60}
.grid{display:grid;gap:1.2rem}@media(min-width:700px){.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}
.card{border-radius:22px;padding:1.5rem;background:#fff7f7;box-shadow:0 6px 20px rgba(163,90,107,.10)}.card a{display:inline-flex;align-items:center;min-height:44px}
.price{font-size:1.5rem;color:#9a4f60;font-family:'Cormorant Garamond',serif;font-weight:700}
.ph{display:inline-block;background:#fff3c4;border:1px dashed #c9a400;color:#6b5500;padding:.15rem .5rem;border-radius:8px;font-size:.85rem;font-weight:700}
.note{background:#f6dcdf;padding:1.1rem 1.3rem;border-radius:18px}
.pillars{display:grid;gap:1.5rem;text-align:center}@media(min-width:700px){.pillars{grid-template-columns:repeat(3,1fr)}}.pillars h3{font-size:1.6rem;margin:.2rem 0}
.soft-end{text-align:center;padding:2rem 0}
form label{display:block;margin:.6rem 0 .2rem}input,textarea{width:100%;min-height:44px;padding:.7rem;border:1px solid #e3bfc6;border-radius:12px;font:inherit;background:#fff7f7}
.ba-grid,.rev-grid{display:grid;gap:1.4rem}@media(min-width:760px){.ba-grid{grid-template-columns:repeat(3,1fr)}.rev-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1100px){.rev-grid{grid-template-columns:repeat(3,1fr)}}.rev-grid{align-items:start}.rev-body.clamp{display:-webkit-box;-webkit-line-clamp:9;-webkit-box-orient:vertical;overflow:hidden}.rev-body p{margin:.4rem 0}.more{background:none;border:0;color:#9a4f60;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer;min-height:44px;padding:0}
.hero2{display:grid;gap:1.5rem;align-items:center;max-width:1320px;margin:auto;padding:2.5rem clamp(1.1rem,3vw,2rem) 1rem}.hero2 .logo-side img{width:min(240px,60vw);height:auto;display:block;margin:auto}.hero2 .cta-side{text-align:center}.hero2 h1{font-size:clamp(2rem,4.5vw,3rem);margin:.2rem 0 .6rem}.hero2 ul{list-style:none;padding:0;margin:.8rem 0 1.2rem;font-weight:700}.hero2 li::before{content:"✓ ";color:#a35a6b}@media(min-width:800px){.hero2{grid-template-columns:5fr 7fr;gap:3rem}.hero2 .logo-side img{width:min(420px,100%)}.hero2 .cta-side{text-align:left}}
.story{display:grid;gap:1.5rem;align-items:start}.portrait{width:100%;max-width:340px;height:auto;border-radius:24px;display:block;margin:0 auto}@media(min-width:700px){.story{grid-template-columns:300px 1fr}}.ba-pair{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.ba-pair figure{margin:0}.ba-pair img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:16px;display:block}.ba-pair figcaption{text-align:center;font-size:.85rem}
.ba-ph{aspect-ratio:4/5;border-radius:16px;background:#f6dcdf;border:2px dashed #d68f9e;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-family:'Cormorant Garamond',serif;font-size:1.2rem;gap:.4rem;padding:.4rem}
.ba-cap{margin:.8rem 0 0;text-align:center}.fine{text-align:center;font-size:.9rem;font-style:italic;margin-top:1.2rem}
.rev{margin:0}.stars{color:#a35a6b;letter-spacing:.15em;font-size:1.1rem;margin:0}.rev footer{font-weight:700;margin-top:.5rem}.rev-src{font-weight:400;display:block;font-size:.85rem}
body>footer{text-align:center;padding:2rem 1rem;font-size:.9rem;border-top:1px solid #f0d3d8}details{background:#fff7f7;border-radius:18px;padding:.6rem 1.2rem;margin:.7rem 0;box-shadow:0 4px 14px rgba(163,90,107,.08)}summary{font-weight:700;cursor:pointer;min-height:44px;display:flex;align-items:center}
.cog-wrap{background:transparent;padding:0;margin:1rem auto;max-width:900px;width:100%}
.cog-cognito,.cog-form,.cog-cognito .cog-form__container,.cog-cognito .cog-page,.cog-cognito .cog-section,.cog-cognito .cog-row{background:transparent!important;box-shadow:none!important;border:0!important}
.cog-cognito{--background:transparent;--form__background-color:transparent;--page__background-color:transparent;--input__background-color:#fff7f7;--input__border-color:#d68f9e;--input__border-radius:12px;--border-radius:12px;--primary:#a35a6b;--primary-reverse:#fff;--highlight:#9a4f60;--color:#835a61;--label__color:#835a61;--heading__color:#835a61;--a:#9a4f60;--font:'Lato',system-ui,sans-serif;--heading__font-family:'Cormorant Garamond',Georgia,serif;--button-primary__background-color:#a35a6b;--button-primary__color:#fff;--button-primary__border-radius:999px;font-family:'Lato',system-ui,sans-serif!important;color:#835a61!important;max-width:900px}
.cog-cognito .cog-label,.cog-cognito label,.cog-cognito .cog-content,.cog-cognito p,.cog-cognito .cog-helptext{color:#835a61!important;font-family:'Lato',system-ui,sans-serif!important}
.cog-cognito h1,.cog-cognito h2,.cog-cognito h3,.cog-cognito .cog-heading,.cog-cognito .cog-form__title,.cog-cognito .cog-section__heading,.cog-cognito .cog-header{font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:600!important;color:#835a61!important}
.cog-cognito input:not([type=checkbox]):not([type=radio]),.cog-cognito select,.cog-cognito textarea,.cog-cognito .el-input__inner,.cog-cognito .el-textarea__inner{min-height:44px;background:#fff7f7!important;border:1px solid #d68f9e!important;border-radius:12px!important;color:#835a61!important;font:inherit}
.cog-cognito button,.cog-cognito .cog-button,.cog-cognito .el-button--primary{background:#a35a6b!important;border-color:#a35a6b!important;color:#fff!important;min-height:44px;border-radius:999px!important;padding:.6rem 1.6rem!important}
.cog-cognito a{color:#9a4f60!important}

/* wide layout: readable measure for prose, full container for grids */
main>p,main>ul,main>ol,main>section>p,main>section>ul,main>section>ol,details p{max-width:78ch}
main>*:not(.grid):not(.pillars):not(.rev-grid):not(.ba-grid):not(.cards):not(.sq-book):not(.story){max-width:46rem;margin-left:auto;margin-right:auto}
.grid,.ba-grid,.rev-grid,.pillars,.story{margin-left:auto;margin-right:auto}
main.home{text-align:center}
.center{text-align:center}
.price-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.price-row .btn{margin:0}
html{scroll-behavior:smooth}
#book{scroll-margin-top:1rem}#pay{scroll-margin-top:1.5rem}
.soft-end p,.soft-end{margin-left:auto;margin-right:auto}
img{max-width:100%;height:auto}


.sq-book{min-height:600px;width:100%}
.sq-book iframe{min-height:680px!important}
.sq-book iframe{width:100%!important;max-width:100%}

/* r10 */
.grid.narrow{max-width:46rem}
.ba-grid.own{max-width:calc((100% - 2.8rem)*2/3 + 1.4rem)}
@media(min-width:760px){.ba-grid.own{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.rev-grid{grid-template-columns:repeat(2,1fr)}}
.foot-disc{font-size:.95rem;color:#6b4249;max-width:46rem;margin:1rem auto}
.menu{display:contents}
.menu-btn{display:none}
@media(max-width:899px){header{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center}
.js .menu-btn{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;min-width:44px;padding:.4rem .9rem;border:1.5px solid #9a4f60;border-radius:999px;background:transparent;color:#9a4f60;font:inherit;font-weight:700;cursor:pointer}
.bars,.bars::before,.bars::after{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;position:relative}
.bars::before,.bars::after{content:"";position:absolute;left:0}.bars::before{top:-6px}.bars::after{top:6px}
.menu{display:flex;flex-direction:column;align-items:center;gap:.6rem;flex-basis:100%}
.js .menu{display:none}.js .menu.open{display:flex}}
.sq-modal{width:min(720px,96vw);height:min(860px,92vh);padding:0;border:0;border-radius:18px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.sq-modal[open]{display:flex;flex-direction:column}
.sq-modal::backdrop{background:rgba(60,30,36,.55)}
.sq-bar{display:flex;justify-content:space-between;align-items:center;padding:.4rem .6rem .4rem 1.1rem;background:#fbeaea}
.sq-bar h2{margin:0;font-size:1.25rem}
.sq-close{min-width:44px;min-height:44px;border:0;background:transparent;font-size:1.3rem;color:#835a61;cursor:pointer}
.sq-modal iframe{flex:1;width:100%;border:0}
.sq-modal .fine{margin:.3rem 1rem .6rem;text-align:center}

/* r12: home hero side by side, centered pair */
.hero2{grid-template-columns:1fr;justify-items:center;text-align:center;max-width:1040px}
.hero2 .cta-side{text-align:center}
.hero2 ul{display:inline-block;text-align:left}
.hero2 .logo-side img{width:min(260px,62vw)}
@media(min-width:800px){.hero2{grid-template-columns:auto minmax(0,520px)!important;justify-content:center;align-items:center;gap:3.5rem!important;text-align:left}
.hero2 .logo-side img{width:clamp(260px,28vw,380px)!important}
.hero2 .cta-side{text-align:left!important}
.hero2 ul{display:block}}

.pay-later{text-align:center;margin:2rem auto 0}
.pay-later p{margin:.4rem 0}
.pay-later.small{font-size:.95rem;padding:1.1rem}

/* r16 info popover */
.hero2 .cta-side{position:relative}
.hero2 .cta-side ul{position:relative}
.hero2 .info-pop{top:100%}
@media(min-width:800px){.hero2 .info-pop{left:0;transform:none}}
.info{display:inline}
.info-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-12px -8px -12px -6px;padding:0;border:0;background:transparent;color:#9a4f60;font-size:1.15rem;line-height:1;cursor:pointer;border-radius:50%;vertical-align:middle;-webkit-tap-highlight-color:transparent}
.info-btn:hover,.info-btn:focus-visible{color:#835a61;outline:2px solid #d68f9e;outline-offset:-8px}
.info-pop{display:none;position:absolute;left:50%;transform:translateX(-50%);margin-top:.6rem;z-index:20;width:min(24rem,calc(100vw - 2rem));background:#fff7f7;color:#835a61;border:1.5px solid #d68f9e;border-radius:16px;padding:1rem 1.1rem;box-shadow:0 10px 30px rgba(163,90,107,.22);font-weight:400;font-size:.92rem;line-height:1.55;text-align:left}
.ip-h{display:block;font-weight:700;color:#9a4f60;margin:.2rem 0 .25rem}.ip-h+*{}
.info-pop .ip-h:not(:first-child){margin-top:.8rem}
.info.open .info-pop,.info-btn:focus-visible+.info-pop{display:block}
@media(hover:hover){.info:hover .info-pop{display:block}}
.info.dismissed .info-pop{display:none!important}

/* r18 gift cards */
.gift-link{font-size:.95rem;margin:.3rem auto 1rem}
.gift-only{border:2px solid #d68f9e;background:#fff7f7;font-size:1.08rem;text-align:center;padding:1.1rem 1.3rem;border-radius:18px}

.foot-reach{font-size:.85rem;color:#6b4249;max-width:40rem;margin:.4rem auto}

/* r23 section boxes: only when .box-out / .box-cream / .faq-q are present */
.box-out,.box-cream{border-radius:22px;padding:1.35rem 1.55rem;margin:1.5rem auto;max-width:46rem}
.box-out{border:2px solid #a35a6b;background:#fff7f7}
.box-cream{background:#fff7f7;border:1px solid #f0d3d8}
.box-out>:first-child,.box-cream>:first-child{margin-top:0}
.box-out>:last-child,.box-cream>:last-child{margin-bottom:0}
.box-out h2,.box-cream h2{margin-top:.1rem}
main.home .box-out,main.home .box-cream{text-align:center}
.faq-q{border:2px solid #a35a6b;box-shadow:none}
@media(max-width:520px){.box-out,.box-cream{padding:1.1rem 1.15rem;margin:1.15rem auto}}
