:root{--red:#b82042;--red-dark:#94142f;--ink:#3a2730;--muted:#78646a;--paper:#fffcf7;--pink:#fbe3e5;--line:#e8d9d8;--rose:#f4cbd1;--serif:'DM Serif Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #5a5789;outline-offset:4px}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1}h1{font-size:clamp(3rem,5.7vw,5.5rem);letter-spacing:-.035em}h2{font-size:clamp(2.3rem,3.3vw,3.5rem);letter-spacing:-.025em}h3{font-size:1.75rem}h1 em,h2 em{font-weight:400;color:var(--red)}.topnote{background:var(--red);color:#fff9ee;text-align:center;padding:7px 16px;font-size:.8rem;letter-spacing:.07em}.topnote span{margin-left:12px}header{max-width:1440px;margin:auto;display:flex;align-items:center;gap:36px;justify-content:space-between;padding:25px 5%;border-bottom:1px solid var(--line)}.brand{font-family:var(--serif);font-size:2rem;line-height:1;white-space:nowrap;color:var(--red);letter-spacing:-.06em}.brand>span:first-child{font-family:Georgia;margin-right:6px;font-size:1.8rem;display:inline-block;transform:rotate(-12deg)}.brand>span:nth-child(2){font-style:italic}.brand small{font-family:var(--sans);font-size:.8rem;letter-spacing:0;margin-left:2px}nav{display:flex;gap:28px;font-size:.9rem}nav a{padding:5px 0;border-bottom:1px solid transparent}nav a:hover,nav a.active{color:var(--red);border-color:var(--red)}.btn{border:1px solid var(--red);display:inline-flex;align-items:center;justify-content:center;gap:15px;border-radius:100px;background:var(--red);color:#fff;padding:13px 24px;line-height:1.4;font-weight:600;font-size:.9rem;transition:background .2s,transform .2s}.btn:hover{background:var(--red-dark);transform:translateY(-2px)}.btn.secondary{background:transparent;color:var(--red)}.btn.secondary:hover{background:#fbe3e5}.btn.white{background:var(--paper);color:var(--red);border-color:var(--paper)}.header-cta{font-size:.8rem;padding:11px 18px}.wrap{max-width:1280px;margin:auto;padding-left:5%;padding-right:5%}.hero{background:var(--pink);position:relative;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.08fr 1fr;gap:65px;padding-top:54px;padding-bottom:56px;align-items:center;max-width:1280px;margin:auto}.eyebrow{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.16em;font-weight:700;margin-bottom:20px;color:var(--red)}.hero h1{max-width:640px}.hero .intro{font-size:1.05rem;max-width:450px;margin-top:22px;color:#694e57}.hero-actions{margin-top:29px;display:flex;align-items:center;gap:23px}.textlink{font-size:.9rem;border-bottom:1px solid currentColor;padding-bottom:3px;color:var(--red);font-weight:600}.handnote{font-family:var(--serif);font-style:italic;color:var(--red);font-size:1.15rem;display:block;margin-top:21px}.check-card{border-radius:22px;background:var(--paper);padding:27px 30px 24px;box-shadow:0 12px 0 -6px #dba6b255;border:1px solid #e4c7cb;position:relative;transform:rotate(1deg)}.check-card .eyebrow{margin-bottom:12px}.check-card h2{font-size:2.15rem}.check-card p{color:var(--muted);font-size:.9rem;margin:12px 0}.check-top{display:flex;justify-content:space-between;align-items:center}.heart-icon{color:var(--red);font-size:1.8rem}.numbers{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;margin:20px 0 7px}.number{height:38px;min-width:0;padding:0;border:1px solid #dfc9cb;background:transparent;border-radius:50%;font-size:.9rem;transition:all .2s}.number:hover{background:var(--pink)}.number.selected{background:var(--red);border-color:var(--red);color:white;transform:translateY(-3px)}.scale-labels{display:flex;justify-content:space-between;font-size:.73rem;color:var(--muted)}.check-footer{border-top:1px solid var(--line);padding-top:16px;margin-top:19px;display:flex;align-items:center;justify-content:space-between;gap:12px}.check-footer p{font-family:var(--serif);font-style:italic;font-size:1rem;margin:0;max-width:165px}.check-footer .btn{padding:10px 18px;font-size:.8rem}.ribbon{border-top:1px solid #e3c9cb;border-bottom:1px solid #e3c9cb;display:flex;justify-content:center;gap:58px;padding:14px 20px;font-family:var(--serif);font-style:italic;font-size:1.1rem;color:#875363;background:#fff3f1}.ribbon span:before{content:'♡';margin-right:15px}.section{padding-top:65px;padding-bottom:65px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}.section-heading .eyebrow{margin-bottom:10px}.section-heading p{color:var(--muted);margin-top:12px}.feature-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:22px}.date-card{display:flex;flex-direction:column;background:#f4ece2;border:1px solid #e1d5cf;border-radius:14px;overflow:hidden;transition:transform .25s,box-shadow .25s}.date-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #50302b12}.date-card img{height:222px;width:100%;object-fit:cover}.date-card .card-body{padding:23px;flex:1}.tag{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--red)}.date-card h3{margin:9px 0 10px}.date-card p{font-size:.9rem;color:#6c5960}.date-card .meta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #6b455b22;padding-top:15px;margin-top:20px;font-size:.8rem}.card-top{height:130px;padding:24px;display:flex;align-items:center;justify-content:space-between}.card-top .numeral{font-family:var(--serif);font-size:4.6rem;line-height:1;color:#6d23492b}.card-top .big-symbol{font-size:3.5rem;line-height:1}.date-card.rose{background:#f9d9e1}.date-card.lilac{background:#eee7f4}.date-card.butter{background:#faecca}.date-card.green{background:#e3eadd}.date-card .arrow{border:1px solid #ad8392;border-radius:50%;width:30px;height:30px;display:grid;place-items:center}.small-note{font-size:.8rem;color:var(--muted)}.together-band{background:#7a2447;color:#fff7f2;display:grid;grid-template-columns:1fr 1.1fr;gap:50px;padding:42px;border-radius:18px}.together-band h2{font-size:2.7rem}.together-band .eyebrow{color:#f1b9c8}.together-band p{margin:15px 0 23px;color:#f0d4df;font-size:.95rem}.question-card{background:#fff3e9;color:var(--ink);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 35px;position:relative;transform:rotate(-2deg)}.question-card h3{font-size:1.9rem;margin:13px 0 25px}.question-card .tag{color:#a14360}.actions-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.small-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.article-card{padding:25px 0;border-top:1px solid var(--line)}.article-card h3{font-size:1.8rem;margin:15px 0}.article-card p{color:var(--muted);font-size:.94rem;margin-bottom:17px}.article-card:hover h3{color:var(--red)}.love-note{background:#f5e4df;text-align:center;padding:38px 20px;border-top:1px solid #e7cfca;border-bottom:1px solid #e7cfca}.love-note .eyebrow{margin-bottom:13px}.love-note p{font-family:var(--serif);font-size:1.9rem}.love-note .textlink{display:inline-block;margin-top:15px}.page-head{padding-top:48px;padding-bottom:35px;max-width:790px}.page-head h1{font-size:clamp(3rem,5vw,4.5rem)}.page-head p{color:var(--muted);margin-top:18px;font-size:1.05rem}.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:29px}.chip{border:1px solid var(--line);border-radius:30px;padding:9px 18px;background:transparent;font-size:.9rem}.chip:hover,.chip.active{background:var(--red);color:white;border-color:var(--red)}.date-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.date-grid .date-card img{height:210px}.detail{max-width:870px;margin:auto;padding:42px 5% 70px}.back{display:inline-block;color:var(--red);font-size:.9rem;margin-bottom:28px}.detail h1{font-size:clamp(2.8rem,5vw,4.2rem);margin:16px 0 22px}.detail .lead{font-size:1.15rem;color:var(--muted);margin-bottom:27px}.detail img{width:100%;max-height:440px;object-fit:cover;border-radius:16px;margin:20px 0}.detail h2{font-size:2rem;margin:35px 0 15px}.detail p{margin:15px 0}.detail li{margin:14px 0;padding-left:7px}.note-box{padding:25px;background:#fae6e7;border:1px solid #e6cbce;border-radius:13px;margin:27px 0}.note-box h3{font-size:1.6rem;margin-bottom:12px}.note-box p:last-child{margin-bottom:0}.pill-row{display:flex;gap:10px;flex-wrap:wrap}.pill{border:1px solid var(--line);padding:5px 14px;font-size:.82rem;border-radius:20px}.check-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:28px;margin-top:10px;margin-bottom:30px}.panel{background:white;border:1px solid var(--line);border-radius:17px;padding:30px}.panel h2{font-size:2rem}.panel p{color:var(--muted);margin:12px 0}.panel .numbers{margin-top:24px}.field{margin-top:23px}.field label,.field legend{display:block;font-size:.9rem;font-weight:600;margin-bottom:9px}fieldset{border:0;padding:0;margin:0;min-width:0}textarea,input[type=text],select{width:100%;padding:12px 14px;color:var(--ink);border:1px solid #d5bec4;border-radius:9px;background:#fffcf9;resize:vertical}textarea{min-height:100px}.choice-row{display:flex;flex-wrap:wrap;gap:8px}.choice{position:relative}.choice input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.choice span{display:inline-block;border:1px solid var(--line);padding:9px 14px;border-radius:22px;font-size:.86rem}.choice input:checked+span{color:var(--red);border-color:var(--red);background:#fde9ec}.choice input:focus-visible+span{outline:3px solid #5a5789;outline-offset:3px}.response{background:#f7e8e9}.response .large-number{font-family:var(--serif);font-size:5rem;line-height:1;color:var(--red);margin:20px 0 5px}.response h3{margin-top:23px;font-size:1.5rem}.response .script{color:var(--ink);font-family:var(--serif);font-size:1.4rem;line-height:1.4}.hidden{display:none!important}.check-layout .btn{margin-top:23px}.error{color:#9f1a31!important;font-size:.9rem}.inline-help{font-size:.8rem!important}.tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:45px}.tools-grid .panel{min-width:0}.tools-grid .panel h2{margin-top:12px}.wide{grid-column:1/-1}.prompt-output{white-space:pre-wrap;background:#fff5ef;padding:20px;border-radius:12px;font-size:.9rem;margin:20px 0}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:60px}.product{border:1px solid var(--line);border-radius:14px;overflow:hidden}.product-visual{padding:28px;background:#f7dce2;display:flex;justify-content:space-between;align-items:center;min-height:100px}.product-visual span:first-child{font-family:var(--serif);font-size:1.7rem}.product-visual span:last-child{font-size:2.3rem;color:var(--red)}.product-body{padding:25px}.product-body p{font-size:.92rem;color:var(--muted);margin:14px 0 22px}.product-body .textlink{font-size:.86rem}.source{font-size:.85rem;color:var(--red);text-decoration:underline}.about{max-width:760px}.about h2{font-size:1.8rem;margin-top:28px}.about p{margin:14px 0}footer{padding:40px 5% 30px;max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px}footer p{text-align:right;font-family:var(--serif);font-style:italic;color:var(--muted)}footer div{display:flex;gap:22px;font-size:.82rem}footer>small{font-size:.76rem;text-align:right;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);padding:12px 22px;border-radius:30px;background:#472936;color:white;opacity:0;pointer-events:none;transition:all .2s;z-index:10;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}.skip{position:absolute;top:-100px;left:15px;background:#fff;padding:10px;z-index:20}.skip:focus{top:10px}.fade-in{animation:enter .4s ease-out}@keyframes enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1441px){.hero-inner{padding-left:0;padding-right:0}}@media(max-width:1050px){header{gap:20px;flex-wrap:wrap}nav{order:3;width:100%;justify-content:center}.hero-inner{gap:30px}.check-card{padding:22px}.number{height:31px;font-size:.78rem}.feature-grid{grid-template-columns:1.15fr 1fr 1fr;gap:15px}.date-card .card-body{padding:20px}.card-top{height:115px}.check-footer{flex-wrap:wrap}.together-band{gap:25px;padding:30px}.hero h1{font-size:4rem}.date-grid,.products{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){header{padding:20px 5%;gap:20px}.brand{font-size:1.85rem}.header-cta{font-size:.74rem;padding:10px 13px}nav{gap:0;justify-content:space-between;overflow:auto;font-size:.79rem}.hero-inner{grid-template-columns:1fr;padding-top:38px;padding-bottom:40px;gap:33px}.hero h1{font-size:3.5rem}.hero .intro{font-size:1rem}.hero-actions{gap:17px}.hero-actions .btn{padding:12px 21px}.hero-actions .textlink{font-size:.85rem}.check-card{transform:none;max-width:500px}.check-card h2{font-size:2.1rem}.number{height:34px}.check-footer{flex-wrap:nowrap}.ribbon{gap:25px;font-size:.92rem}.ribbon span:last-child{display:none}.ribbon span:before{margin-right:8px}.section{padding-top:42px;padding-bottom:42px}.section-heading{align-items:start;flex-direction:column;gap:16px}.section-heading h2{font-size:2.4rem}.feature-grid,.small-cards,.tools-grid,.check-layout{grid-template-columns:1fr}.feature-grid .date-card{display:block}.card-top{height:90px}.date-card img{height:235px}.feature-grid .card-top{height:95px}.feature-grid .card-body{padding:23px}.together-band{grid-template-columns:1fr;padding:28px 22px;gap:27px}.together-band h2{font-size:2.4rem}.question-card{padding:25px 20px}.question-card h3{font-size:1.8rem}.date-grid,.products{grid-template-columns:1fr}.page-head{padding-top:35px}.page-head h1{font-size:3.15rem}.panel{padding:24px}.detail{padding-top:30px}.detail h1{font-size:3rem}.wide{grid-column:auto}footer{grid-template-columns:1fr;gap:20px}footer p,footer>small{text-align:left}footer div{flex-wrap:wrap}.small-cards{gap:0}.number{min-height:36px}.hero .eyebrow{font-size:.71rem}.scale-labels{font-size:.76rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;transform:none!important}}
/* LoveCoach v2: a more affectionate layer of hearts and small interface icons. */
.love-icon{display:inline-block;width:22px;height:22px;flex:0 0 auto;vertical-align:middle}.hero-kicker,.section-kicker{display:flex;align-items:center;gap:9px}.hero-kicker .love-icon{width:19px;height:19px;fill:#b8204212}.section-kicker .love-icon{width:18px;height:18px}.hero-inner{position:relative;z-index:1}.heart-sprinkles{position:absolute;inset:0;pointer-events:none;overflow:hidden;color:var(--red)}.heart-sprinkles span{position:absolute;font-family:Georgia,serif;line-height:1;opacity:.2}.heart-sprinkles span:nth-child(1){left:1.5%;top:10%;font-size:64px;transform:rotate(-19deg)}.heart-sprinkles span:nth-child(2){left:43%;top:7%;font-size:22px;transform:rotate(16deg)}.heart-sprinkles span:nth-child(3){left:47%;bottom:5%;font-size:81px;transform:rotate(14deg)}.heart-sprinkles span:nth-child(4){right:1.4%;top:24%;font-size:30px;transform:rotate(20deg)}.heart-sprinkles span:nth-child(5){right:2%;bottom:7%;font-size:68px;transform:rotate(-15deg)}.heart-sprinkles span:nth-child(6){left:40%;top:34%;font-size:42px;opacity:.3}.heart-sprinkles span:nth-child(7){left:3%;bottom:5%;font-size:28px}.heart-seal{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;background:#fbe3e5;color:var(--red);transform:rotate(10deg);border:1px dashed #c64b67}.heart-seal .love-icon{width:25px;height:25px;fill:#e68da33b}.check-card .check-top .eyebrow{margin-bottom:0}.check-card .check-top{margin-bottom:14px}.check-card:hover .heart-seal{animation:heartHello .7s ease-in-out 1}.nav-love{color:var(--red);font-size:1rem}.ribbon span{display:inline-flex;align-items:center;gap:11px}.ribbon span:before{content:none}.ribbon .love-icon{width:19px;height:19px}.big-symbol .love-icon{width:55px;height:55px;stroke-width:1.2;fill:#ffffff25;color:#9e3d60}.date-tag{display:flex;align-items:center;gap:7px;font-size:.68rem}.date-tag .love-icon{width:16px;height:16px}.question-heart{position:absolute;top:-18px;right:19px;background:#f2adbf;border:1px solid #8e3a5b;border-radius:50%;width:39px;height:39px;display:grid;place-items:center;transform:rotate(14deg);color:#7a2447}.question-heart .love-icon{width:23px;height:23px;fill:#fff3e970}.love-note-hearts{font-family:Georgia,serif;display:flex;align-items:center;justify-content:center;gap:15px;color:var(--red);font-size:2.5rem;margin-bottom:17px;line-height:1}.love-note-hearts span{font-size:1.7rem;transform:rotate(-10deg)}.footer-hearts{color:var(--red);margin-left:8px;white-space:nowrap}@keyframes heartHello{0%,100%{transform:rotate(10deg) scale(1)}40%{transform:rotate(0) scale(1.12)}70%{transform:rotate(10deg) scale(.98)}}@media(max-width:720px){.heart-sprinkles span:nth-child(1){left:auto;right:3%;top:3%;font-size:45px;opacity:.16}.heart-sprinkles span:nth-child(2){left:90%;top:27%}.heart-sprinkles span:nth-child(3){left:78%;bottom:3%;font-size:55px}.heart-sprinkles span:nth-child(4),.heart-sprinkles span:nth-child(5),.heart-sprinkles span:nth-child(6){display:none}.hero-kicker{max-width:90%;font-size:.66rem!important;letter-spacing:.1em}.hero-kicker .love-icon{width:16px;height:16px}.nav-love{display:none}.ribbon span:last-child{display:none}.date-tag{font-size:.72rem}}@media(prefers-reduced-motion:reduce){.check-card:hover .heart-seal{animation:none!important}}
