@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400&display=swap');
.hlp-header,.hlp-hero{--hero-pink:#e72b83;--hero-ink:#171418;--hero-cream:#fffaf4;color:var(--hero-ink)}
.hlp-header{position:sticky;top:0;z-index:20;background:rgba(255,250,244,.97);display:flex;align-items:center;gap:1.6rem;padding:1rem clamp(1.25rem,4vw,4.5rem);border-bottom:1px solid #eddfd8}
.hlp-brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;flex-shrink:0}
.hlp-brand img{width:74px;height:74px;object-fit:contain}
.hlp-brand span{font-family:'Bebas Neue',Impact,sans-serif;font-size:clamp(1.4rem,2.1vw,2.3rem);line-height:1;letter-spacing:.01em;white-space:nowrap}
.hlp-brand small{display:block;font-size:.63em;margin-bottom:.2rem;letter-spacing:.05em}
.hlp-header nav{display:flex;align-items:center;justify-content:center;gap:clamp(.85rem,1.8vw,1.8rem);flex:1}
.hlp-header nav a{font-size:.75rem;letter-spacing:.13em;text-decoration:none;font-weight:500;white-space:nowrap}
.hlp-header nav a:hover{text-decoration:underline;text-underline-offset:5px}
.hlp-button{display:inline-flex;justify-content:center;align-items:center;gap:1.3rem;min-width:255px;height:60px;padding:0 1.8rem;background:var(--hero-pink);color:#fff;border:1px solid var(--hero-pink);border-radius:5px;text-decoration:none;font-family:'DM Sans',sans-serif;font-size:.85rem;line-height:1.2;letter-spacing:.18em;font-weight:600;transition:background .2s,border-color .2s}
.hlp-button span{font-size:1.7rem;line-height:1;font-weight:400;letter-spacing:0}
.hlp-button:hover{background:#bd1f69;border-color:#bd1f69}
.hlp-button:focus-visible,.hlp-brand:focus-visible,.hlp-header nav a:focus-visible,.hlp-hero-transition a:focus-visible{outline:3px solid #72255b;outline-offset:5px}
.hlp-header-cta{min-width:190px;height:52px;font-size:.76rem;padding:0 1.2rem}
.hlp-header .menu-toggle{display:none}
.hlp-hero{background:var(--hero-cream);overflow:hidden;scroll-margin-top:110px}
.hlp-hero-layout{max-width:1500px;margin:auto;display:grid;grid-template-columns:45% 55%;min-height:720px;padding-left:clamp(1.5rem,6vw,7rem)}
.hlp-hero-copy{position:relative;z-index:4;padding:3rem 0 2rem}
.hlp-eyebrow{color:var(--hero-pink);letter-spacing:.29em;font-size:.87rem;font-weight:600;line-height:1.5;margin:0 0 1.1rem}
.hlp-hero h1{font-family:'Libre Baskerville',Georgia,serif;font-weight:400;font-size:clamp(3rem,5vw,5.25rem);line-height:1.12;letter-spacing:-.065em;margin:0 0 1.4rem;position:relative}
.hlp-underlined{position:relative;display:inline-block}
.hlp-underlined img{position:absolute;width:100%;height:26px;object-fit:fill;object-position:center;bottom:-14px;left:0;z-index:0;transform:rotate(-2deg)}
.hlp-app-free{font-size:1rem;font-weight:600;letter-spacing:.27em;margin:1.4rem 0 1.8rem;line-height:1.6}
.hlp-hero-intro{font-family:'Libre Baskerville',Georgia,serif;font-size:clamp(1.05rem,1.65vw,1.4rem);line-height:1.55;margin:0 0 1.7rem;letter-spacing:-.02em}
.hlp-value-markers{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:1.8rem 0 0;max-width:510px}
.hlp-value-markers li{font-size:.62rem;letter-spacing:.13em;line-height:1.6;text-align:center;padding:0 .6rem;position:relative}
.hlp-value-markers li+li{border-left:1px solid #bcaaa7}
.hlp-value-markers img{width:35px;height:35px;object-fit:contain;margin:0 auto .7rem}
.hlp-portrait-composition{position:relative;min-height:720px;isolation:isolate}
.hlp-art{position:absolute;object-fit:contain;pointer-events:none}
.hlp-art-pink{width:65%;height:64%;left:-7%;top:0;transform:rotate(-17deg);z-index:0}
.hlp-art-coral{width:58%;height:65%;right:-9%;bottom:1%;transform:rotate(14deg);z-index:0}
.hlp-art-blush{width:65%;height:56%;left:-13%;bottom:2%;transform:rotate(-17deg);z-index:0}
.hlp-art-sun{width:90px;height:90px;right:4%;top:3%;transform:rotate(10deg);z-index:1}
.hlp-portrait{position:absolute;width:83%;max-width:none;height:93%;object-fit:contain;object-position:center bottom;bottom:0;left:-1%;z-index:2}
.hlp-love-quote{position:absolute;z-index:3;right:2%;top:37%;width:21%;text-align:center;transform:rotate(-6deg)}
.hlp-love-quote p{font-family:'Caveat',cursive;font-weight:500;font-size:clamp(1.4rem,2.5vw,2.3rem);line-height:1.05;letter-spacing:0;margin:0 0 .9rem}
.hlp-love-quote small{font-size:.65rem;letter-spacing:.14em;display:block}
.hlp-love-quote img{width:42px;height:42px;object-fit:contain;margin:.8rem auto 0}
.hlp-hero-transition{background:#fce6eb;border-top:1px solid #f4d3df;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:1.6rem clamp(1.5rem,6vw,7rem);gap:0}
.hlp-hero-transition a{display:flex;gap:1.1rem;padding:0 1.7rem;text-decoration:none;align-items:flex-start}
.hlp-hero-transition a:first-child{padding-left:0}.hlp-hero-transition a+a{border-left:1px solid #d7b5c1}
.hlp-hero-transition img{width:48px;height:60px;object-fit:contain;flex-shrink:0}
.hlp-hero-transition h2{font-family:'DM Sans',sans-serif;font-size:.86rem;font-weight:600;line-height:1.4;letter-spacing:.15em;margin:0 0 .5rem}
.hlp-hero-transition p{font-size:.9rem;line-height:1.55;margin:0;max-width:29ch}
@media(min-width:1500px){.hlp-hero h1{font-size:5.45rem}.hlp-hero-layout,.hlp-portrait-composition{min-height:760px}}
@media(max-width:1150px){.hlp-header{gap:.8rem;padding:1rem 1.5rem}.hlp-brand img{width:60px;height:60px}.hlp-brand span{font-size:1.65rem}.hlp-header nav{gap:.75rem}.hlp-header nav a{font-size:.65rem;letter-spacing:.08em}.hlp-header-cta{min-width:145px;padding:0 .9rem;font-size:.66rem}.hlp-hero-layout{padding-left:4vw;min-height:650px}.hlp-portrait-composition{min-height:650px}.hlp-hero h1{font-size:4.9vw}.hlp-app-free{font-size:.82rem}.hlp-eyebrow{font-size:.75rem}.hlp-hero-transition a{padding:0 1rem}.hlp-hero-transition p{font-size:.83rem}}
@media(max-width:850px){.hlp-header{flex-wrap:wrap;padding:.65rem 1.25rem;gap:.6rem}.hlp-brand img{width:48px;height:48px}.hlp-brand span{font-size:1.45rem}.hlp-header-cta{margin-left:auto;min-width:140px;height:44px}.hlp-header .menu-toggle{display:block;margin-left:0;background:none;border:1px solid #e3c6d2;border-radius:3px;font-size:.8rem;padding:.6rem;color:#281b26}.hlp-header nav{display:none;order:5;width:100%;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:0}.menu-open .hlp-header nav{display:flex}.hlp-header nav a{font-size:.8rem;width:100%;padding:.7rem 0}.hlp-hero-layout{grid-template-columns:1fr;padding:0 6vw;min-height:0}.hlp-hero-copy{padding-top:2.8rem;max-width:610px;margin:auto;width:100%}.hlp-hero h1{font-size:clamp(3rem,8.4vw,4.9rem);line-height:1.11}.hlp-eyebrow{font-size:.78rem}.hlp-app-free{font-size:.94rem}.hlp-hero-intro{font-size:1.2rem}.hlp-value-markers{max-width:480px;margin-bottom:1rem}.hlp-portrait-composition{min-height:620px;margin:0 -6vw}.hlp-portrait{width:77%;left:4%;height:96%}.hlp-art-pink{width:59%;left:0}.hlp-art-coral{width:55%;right:-2%}.hlp-love-quote{right:3%;width:20%}.hlp-love-quote p{font-size:2rem}.hlp-hero-transition{padding:1.4rem 6vw;gap:1.25rem;grid-template-columns:1fr}.hlp-hero-transition a,.hlp-hero-transition a:first-child{padding:0}.hlp-hero-transition a+a{border-left:0;border-top:1px solid #d7b5c1;padding-top:1.2rem}.hlp-hero-transition p{max-width:45ch;font-size:.92rem}}
@media(max-width:500px){.hlp-header{gap:.4rem;padding:.6rem 5vw}.hlp-brand img{width:44px;height:44px}.hlp-brand span{font-size:1.25rem}.hlp-header-cta{order:4;flex-basis:100%;width:100%;height:42px;margin:0}.hlp-header .menu-toggle{margin-left:auto}.hlp-hero-copy{padding-top:2.2rem}.hlp-eyebrow{font-size:.7rem;letter-spacing:.2em}.hlp-hero h1{font-size:clamp(2.7rem,10.8vw,3.8rem);letter-spacing:-.06em}.hlp-app-free{font-size:.77rem;letter-spacing:.22em}.hlp-hero-intro{font-size:1.05rem}.hlp-hero-copy>.hlp-button{width:100%;height:58px}.hlp-value-markers li{font-size:.55rem;padding:0 .2rem;letter-spacing:.07em}.hlp-value-markers img{width:29px;height:29px}.hlp-portrait-composition{min-height:480px;padding-bottom:100px}.hlp-portrait{height:370px;width:90%;left:5%;bottom:100px}.hlp-art-pink{height:340px;width:75%;left:-8%;top:0}.hlp-art-coral{width:65%;height:300px;bottom:100px}.hlp-art-blush{bottom:100px;height:300px}.hlp-art-sun{width:60px;height:60px;right:2%;top:8px}.hlp-love-quote{position:absolute;top:auto;bottom:8px;right:10%;width:80%;display:flex;align-items:center;justify-content:center;gap:1rem;transform:rotate(-3deg)}.hlp-love-quote p{font-size:1.8rem;margin:0}.hlp-love-quote p br{display:none}.hlp-love-quote small{font-size:.65rem}.hlp-love-quote img{width:32px;height:32px;margin:0}}

/* Requested hero corrections; continuous navigation strip retained. */
.hlp-hero-layout{grid-template-columns:55% minmax(0,1fr);column-gap:clamp(2rem,4vw,4rem);padding-left:0;padding-right:clamp(1.5rem,6vw,7rem)}
.hlp-hero-copy{grid-column:2;grid-row:1;min-width:0}
.hlp-portrait-composition{grid-column:1;grid-row:1}
.hlp-portrait{left:14%}
.hlp-love-quote{right:auto;left:2%}
.hlp-app-free{font-family:'Caveat',cursive;font-weight:400;font-size:clamp(3.6rem,6vw,6rem);line-height:.95;letter-spacing:0;color:#ff298c;margin:1.8rem 0 2rem}
.hlp-app-free>span{position:relative;display:inline-block;padding-bottom:.45rem}
.hlp-app-free img{position:absolute;left:0;bottom:-8px;width:100%;height:21px;object-fit:fill;transform:rotate(-2deg);pointer-events:none}
.hlp-hero-transition a{cursor:pointer}
.hlp-hero-transition a>div{display:flex;flex-direction:column;flex:1}
.hlp-card-link{display:flex;align-items:center;gap:.7rem;font-size:.72rem;font-weight:700;letter-spacing:.12em;color:#ae245f;margin-top:1rem}
.hlp-card-link>span{display:inline-block;font-size:1.2rem;transition:transform .2s}
.hlp-hero-transition a:hover .hlp-card-link{color:#781540}
.hlp-hero-transition a:hover .hlp-card-link>span{transform:translateX(4px)}
@media(min-width:851px){.hlp-portrait-composition{overflow:hidden}.hlp-art-coral{right:0}}
@media(max-width:1150px){.hlp-hero-layout{padding-right:4vw}}
@media(max-width:850px){.hlp-hero-layout{grid-template-columns:1fr;column-gap:0;padding:0 6vw}.hlp-hero-copy{grid-column:1;grid-row:1}.hlp-portrait-composition{grid-column:1;grid-row:2}.hlp-portrait{left:4%}.hlp-love-quote{left:auto;right:3%}.hlp-app-free{font-size:clamp(4rem,10vw,6rem)}}
@media(max-width:500px){.hlp-portrait{left:5%}.hlp-love-quote{left:auto;right:10%}.hlp-app-free{font-size:clamp(3.2rem,14vw,4.4rem)}.hlp-app-free img{height:18px;bottom:-6px}}
@media(prefers-reduced-motion:reduce){.hlp-card-link>span{transition:none}.hlp-hero-transition a:hover .hlp-card-link>span{transform:none}}

/* Legible natural handwriting correction, limited to the hero promise. */
.hlp-app-free{font-size:clamp(2.5rem,4.3vw,4.25rem);font-weight:400;line-height:1.08;letter-spacing:0;margin:1.6rem 0 2rem}
.hlp-app-free>span{max-width:100%;padding-bottom:.6rem}
.hlp-app-free img{height:15px;bottom:-3px}
@media(max-width:850px){.hlp-app-free{font-size:clamp(2.7rem,7vw,4.1rem)}}
@media(max-width:500px){.hlp-app-free{font-size:clamp(2.35rem,10vw,3.1rem);line-height:1.1}.hlp-app-free img{height:13px;bottom:-2px}}

/* Approved surgical hero pass: uploaded paint, clear face, hopeful copy. */
.hlp-hero-painted{position:absolute;pointer-events:none;z-index:0;overflow:hidden}
.hlp-hero-painted-pink{width:760px;height:auto;aspect-ratio:950/1024;left:-275px;top:370px;transform:rotate(-8deg)}
.hlp-hero-painted-mango{width:200px;height:auto;aspect-ratio:455/499;left:-55px;bottom:-12px;transform:rotate(8deg)}
.hlp-hero .hlp-hero-intro{max-width:34ch;margin:2.2rem 0 .6rem;font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.6}
.hlp-hero-hope{font-family:'Caveat',cursive;font-size:clamp(1.9rem,2.6vw,2.7rem);font-weight:400;line-height:1.15;letter-spacing:0;color:var(--hero-pink);margin:0 0 2rem;max-width:25ch}
.hlp-hero-copy{padding-top:3.5rem;padding-bottom:3rem}
@media(min-width:1500px){.hlp-hero-painted-pink{top:390px}}
@media(min-width:851px) and (max-width:1150px){.hlp-hero-painted-pink{width:650px;left:-285px;top:345px}.hlp-hero-painted-mango{width:175px;left:-50px}}
@media(max-width:850px){.hlp-hero .hlp-hero-intro{max-width:36ch;margin-top:2.2rem;font-size:1.2rem}.hlp-hero-hope{font-size:clamp(2rem,5vw,2.7rem)}.hlp-hero-painted-pink{width:760px;left:-280px;top:335px}.hlp-hero-painted-mango{width:190px;left:-50px;bottom:0}.hlp-portrait-composition{overflow:hidden}}
@media(max-width:500px){.hlp-hero-copy{padding-top:2.2rem}.hlp-hero .hlp-hero-intro{font-size:1.05rem}.hlp-hero-hope{font-size:2rem;margin-bottom:1.8rem}.hlp-hero-painted-pink{width:520px;left:-220px;top:200px}.hlp-hero-painted-mango{width:125px;left:-30px;bottom:88px}}

/* Portrait artwork only: supplied paint, oversized low bleed, one warm accent. */
.hlp-hero .hlp-hero-painted-pink{width:1000px;left:-480px;top:360px;transform:none}
.hlp-hero .hlp-hero-painted-mango{width:150px;aspect-ratio:480/550;left:-45px;bottom:-20px;transform:rotate(-8deg)}
@media(min-width:1500px){.hlp-hero .hlp-hero-painted-pink{top:390px;left:-440px}}
@media(min-width:851px) and (max-width:1150px){.hlp-hero .hlp-hero-painted-pink{width:850px;left:-430px;top:330px}.hlp-hero .hlp-hero-painted-mango{width:135px;left:-40px}}
@media(max-width:850px){.hlp-hero .hlp-hero-painted-pink{width:1000px;left:-490px;top:335px}.hlp-hero .hlp-hero-painted-mango{width:145px;left:-40px;bottom:-15px}}
@media(max-width:500px){.hlp-hero .hlp-hero-painted-pink{width:650px;left:-360px;top:220px}.hlp-hero .hlp-hero-painted-mango{width:100px;left:-30px;bottom:80px}}

/* Uploaded floral corner only; portrait area remains clean Cream. */
.hlp-hero{position:relative}
.hlp-hero-floral-corner{position:absolute;z-index:1;pointer-events:none;width:38vw;max-width:none;height:auto;left:-2vw;top:calc(-11vw + 40px);transform:scaleX(-1);transform-origin:center}
@media(max-width:850px){.hlp-hero-floral-corner{width:300px;left:-24px;top:-172px}}
@media(max-width:500px){.hlp-hero-floral-corner{width:240px;left:-22px;top:-139px}}

/* Photograph-only refinement: larger portrait anchored higher, fixed hero flow. */
@media(min-width:851px){
.hlp-hero .hlp-portrait{width:95.45%;height:100%;left:2.25%;top:0;bottom:auto;object-fit:contain;object-position:center top}
}
@media(min-width:501px) and (max-width:850px){
.hlp-hero .hlp-portrait{width:88.55%;height:100%;left:5.7%;top:0;bottom:auto;object-fit:contain;object-position:center top}
}
@media(max-width:500px){
.hlp-hero .hlp-portrait{width:95%;height:calc(100% - 100px);left:2.5%;top:0;bottom:auto;object-fit:contain;object-position:center top}
}

/* Portrait-only intrinsic framing: eliminate the text-height image box. */
@media(min-width:851px){.hlp-hero .hlp-portrait{width:100%;height:auto;max-width:100%;left:0;top:0;bottom:auto;object-fit:contain;object-position:center top}}
@media(min-width:501px) and (max-width:850px){.hlp-hero .hlp-portrait{width:min(100%,550px);height:auto;max-height:100%;left:50%;top:0;bottom:auto;transform:translateX(-50%);object-fit:contain;object-position:center top}}
@media(max-width:500px){.hlp-hero .hlp-portrait{width:100%;height:calc(100% - 100px);max-width:100%;left:0;top:0;bottom:auto;object-fit:contain;object-position:center top}}

/* Photograph-only bottom alignment; preserve the existing size and hero track. */
@media(min-width:851px){
.hlp-hero .hlp-portrait-composition{display:flex;flex-direction:column;justify-content:flex-end;contain:size}
.hlp-hero .hlp-portrait{position:relative;flex:none;top:auto;bottom:auto;left:0;object-position:center bottom}
}

/* Mobile photograph only: anchor the existing image box and visible photo to its bottom edge. */
@media(max-width:500px){
.hlp-hero .hlp-portrait{display:block;top:auto;bottom:0;object-position:center bottom}
}
