@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500&display=swap');
:root{color-scheme:light;--ink:#302724;--muted:#695b57;--rose:#bd8c82;--line:#eadbd5;--paper:#fffdfa}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:radial-gradient(ellipse at 94% 24%,rgba(230,193,185,.19),transparent 35%),radial-gradient(ellipse at 3% 77%,rgba(230,193,185,.13),transparent 38%),#fbf8f5;font-size:16px;line-height:1.65}a{color:#98665d;text-underline-offset:3px}a:hover{color:#6d4039}a:focus-visible{outline:3px solid #b78377;outline-offset:4px}.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:12px;z-index:99;background:#fff;padding:12px}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,253,251,.97);border-bottom:1px solid #efe3df;box-shadow:0 2px 15px rgba(59,38,33,.055)}.header-inner{max-width:1240px;min-height:86px;margin:auto;padding:10px 30px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{width:205px;height:auto;display:block}.site-header nav{display:flex;gap:24px;align-items:center}.site-header nav a{text-decoration:none;font-size:14px;font-weight:600;color:var(--ink)}.site-header nav .header-contact{background:#e8c8c1;padding:11px 22px;border-radius:30px;white-space:nowrap}
.page-banner{background:linear-gradient(115deg,#f4e4de 0%,#f9eeea 57%,#f5e5df 100%);border-bottom:1px solid #eddbd4;position:relative;overflow:hidden}.page-banner:after{content:'♡';position:absolute;right:6%;top:-75px;color:rgba(183,124,112,.13);font:normal 330px Georgia,serif;pointer-events:none}.banner-inner{max-width:1080px;margin:auto;padding:55px 30px 60px;position:relative;z-index:1}.eyebrow{font-size:12px;letter-spacing:.24em;color:#9d6b62;font-weight:700;margin:0 0 12px}.page-banner h1{font:normal clamp(34px,4vw,54px)/1.18 'Playfair Display',Georgia,serif;letter-spacing:-.025em;max-width:800px;margin:0 0 13px}.intro{font-size:17px;color:#6b5550;margin:0;max-width:670px}
.content-wrap{max-width:1080px;padding:35px 30px 75px;margin:auto}.back-link{display:inline-flex;align-items:center;font-size:14px;font-weight:600;margin-bottom:25px;text-decoration:none}.content-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.content-sections section{min-width:0;background:rgba(255,255,255,.88);border:1px solid var(--line);border-radius:16px;padding:26px 28px 28px;box-shadow:0 5px 22px rgba(62,39,34,.035)}.content-sections section h2{font:normal 25px/1.27 'Playfair Display',Georgia,serif;margin:0 0 13px;color:#342824}.content-sections section h2:before{content:'✧';color:#c99c8e;font:normal 20px Georgia,serif;margin-right:10px}.content-sections section p{margin:0;color:#544943;line-height:1.8;font-size:15px}.closing{margin-top:25px;background:#f5eae5;border:1px solid #ebd9d1;border-radius:15px;padding:20px 26px;color:#584a45}.closing p{margin:9px 0;line-height:1.75}.closing small{font-size:12px;color:#8d7871}.closing a{font-weight:600;overflow-wrap:anywhere}
.site-footer{background:#fffdfa;border-top:1px solid var(--line);padding:30px max(30px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:14px}.site-footer strong{font-family:'Playfair Display',Georgia,serif;font-size:19px;font-weight:400}.site-footer p{margin:3px 0 0;color:#806e67}.site-footer>div:nth-child(2){display:flex;flex-direction:column}.footer-home{font-weight:600;text-decoration:none;white-space:nowrap}
@media(max-width:720px){.header-inner{padding:9px 18px;min-height:69px}.brand img{width:150px}.site-header nav{gap:12px}.site-header nav a{font-size:12px}.site-header nav .header-contact{display:none}.banner-inner{padding:39px 22px 42px}.page-banner:after{right:-38px;top:-25px;font-size:200px}.page-banner h1{font-size:clamp(31px,8vw,41px)}.intro{font-size:15px}.content-wrap{padding:24px 18px 52px}.content-sections{grid-template-columns:1fr;gap:14px}.content-sections section{padding:22px 20px;border-radius:13px}.content-sections section h2{font-size:23px}.closing{padding:18px 20px}.site-footer{padding:28px 22px;flex-direction:column;align-items:flex-start}.footer-home{white-space:normal}}
@media(max-width:360px){.brand img{width:125px}.site-header nav{gap:9px}.site-header nav a{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
