
:root{--ink:#202026;--muted:#675f6e;--pink:#c91465;--rose:#fff1f7;--line:#f0dce7;--bg:#fffdfa;--white:#fff;--shadow:0 14px 42px rgba(92,48,72,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--pink);outline-offset:4px} .wrap{max-width:1130px;margin:auto;padding:0 22px}.skip{position:absolute;top:-100px;left:10px;background:white;padding:10px;z-index:99}.skip:focus{top:10px}header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}nav{display:flex;justify-content:space-between;align-items:center;min-height:77px;gap:16px}.logo{font-weight:800;font-size:clamp(1.28rem,3vw,1.68rem);letter-spacing:-.06em;text-decoration:none;white-space:nowrap}.logo .pink{font-style:italic;color:var(--pink)}.navlinks{display:flex;align-items:center;gap:27px}.navlinks a{text-decoration:none;font-weight:650;font-size:.92rem}.navlinks a:hover,.foot a:hover{color:var(--pink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:13px 23px;background:var(--pink);color:#fff;text-decoration:none;font-weight:750;border:2px solid var(--pink);transition:transform .2s,background .2s}.btn:hover{background:#b42d70;border-color:#b42d70;transform:translateY(-2px)}.btn.secondary{color:var(--ink);background:white;border-color:#ebcbdc}.btn.secondary:hover{background:var(--rose)}.navcta{padding:9px 18px!important;color:white!important}.hero{background:radial-gradient(circle at 80% 22%,#ffe5f0 0,transparent 35%),linear-gradient(145deg,#fff 12%,#fff4f9 100%);padding:90px 0 84px}.hero-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:58px;align-items:center}.eyebrow{font-size:.8rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:var(--pink)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.5rem,5.5vw,4.6rem);line-height:1.1;letter-spacing:-.055em;margin:15px 0 24px}h1 em{font-style:normal;color:var(--pink)}.lead{color:#564d5b;font-size:1.16rem;max-width:580px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.fine{margin:19px 0 0;color:var(--muted);font-size:.9rem}.hero-art{position:relative;min-height:400px;display:grid;grid-template-columns:repeat(2,1fr);gap:15px;transform:rotate(2deg)}.art{box-shadow:var(--shadow);background:white;border:1px solid var(--line);border-radius:23px;padding:26px 20px;display:flex;flex-direction:column;justify-content:space-between;min-height:190px;position:relative;overflow:hidden}.art:nth-child(2),.art:nth-child(3){transform:translateY(19px)}.art:nth-child(2){background:#ffedf5}.art:nth-child(3){background:#fff8e9}.art:nth-child(4){background:#f1f7f3}.art b{font-size:1.15rem}.art small{color:var(--muted)}.art-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#ffedf5;font-size:1.75rem}.art:nth-child(2) .art-icon{background:white}.art:nth-child(3) .art-icon{background:#fff}.art:nth-child(4) .art-icon{background:white}.section{padding:82px 0}.section.alt{background:white}.section-head{max-width:730px;margin:0 auto 35px;text-align:center}.section h2{font-size:clamp(1.85rem,3.6vw,2.85rem);letter-spacing:-.045em;line-height:1.16;margin:10px 0 18px}.section-head p{color:var(--muted);font-size:1.05rem}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.service{border:1px solid var(--line);border-radius:22px;padding:29px;background:white;box-shadow:0 10px 28px rgba(80,40,70,.035);display:flex;flex-direction:column;align-items:flex-start}.service-icon{font-size:1.75rem;background:var(--rose);width:58px;height:58px;border-radius:17px;display:grid;place-items:center;margin-bottom:22px}.service h3{font-size:1.43rem;letter-spacing:-.03em;margin-bottom:6px}.service p{color:var(--muted);margin-bottom:23px;flex:1}.textlink{color:#a82666;font-weight:750;text-decoration:none}.textlink:hover{text-decoration:underline}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.value{padding:24px;border-radius:20px;background:#fff5f9;border:1px solid var(--line)}.value .num{color:var(--pink);font-weight:900;font-size:1.35rem}.value h3{margin:10px 0 6px}.value p{color:var(--muted);margin-bottom:0}.callout{border-radius:25px;padding:40px;background:#402b3a;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.callout p{color:#f7dce9;max-width:650px;margin-bottom:0}.callout h2{margin-bottom:8px}.callout .btn{background:white;border-color:white;color:#402b3a;white-space:nowrap}.callout .btn:hover{background:#ffe9f3}footer{background:#251c27;color:white;padding:48px 0 25px}.foot{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:25px}.foot .logo{color:#fff}.foot p{color:#d9cdd5;max-width:330px}.foot h3{font-size:1rem}.foot a{color:#e9dce4;text-decoration:none;display:block;margin:8px 0}.copyright{border-top:1px solid #594753;margin-top:30px;padding-top:20px;color:#bcaeba;font-size:.82rem}.page{max-width:800px;margin:0 auto;padding:70px 22px 95px;min-height:58vh}.page h1{font-size:clamp(2.1rem,5vw,3.2rem)}.page p,.page li{color:#514c58}.page h2{margin-top:36px;font-size:1.4rem}.page a{color:#ad2869}.notice{background:var(--rose);border-left:4px solid var(--pink);padding:15px 20px;border-radius:5px}.muted{color:var(--muted)}
@media(max-width:850px){.hero-grid{grid-template-columns:1fr}.hero{padding:60px 0}.hero-art{max-width:550px;min-height:300px;transform:none}.art{min-height:155px;padding:19px}.foot{grid-template-columns:1fr 1fr}.values{grid-template-columns:1fr}.callout{flex-direction:column;align-items:flex-start}}
@media(max-width:620px){nav{flex-wrap:wrap;padding:12px 0}.navlinks{gap:16px;flex-wrap:wrap}.navlinks a{font-size:.86rem}.navcta{display:none}.hero{padding:55px 0}.hero-art{gap:10px}.art{min-height:148px;padding:15px}.art-icon{width:48px;height:48px}.art b{font-size:1rem}.cards{grid-template-columns:1fr}.section{padding:61px 0}.service{padding:23px}.foot{grid-template-columns:1fr}.callout{padding:26px}.actions .btn{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Fixher family wordmark: only the lowercase italic h uses the pink accent */
.logo .pink { font-weight:700; font-style:italic; color:var(--pink); }

/* Mobile-first refinements for phone-size screens */
html { -webkit-text-size-adjust:100%; }
body { overflow-wrap:break-word; }
@media (max-width: 767px) {
  .wrap { width:100%; max-width:100%; padding-left:18px; padding-right:18px; }
  header { position:relative; }
  nav { min-height:0; padding-top:12px; padding-bottom:10px; align-items:stretch; gap:10px; }
  nav .logo { align-self:center; font-size:clamp(1.13rem,5.2vw,1.46rem); letter-spacing:-.04em; }
  .navlinks { display:flex; width:100%; align-items:stretch; justify-content:center; gap:0; flex-wrap:nowrap; border-top:1px solid var(--line); padding-top:9px; }
  .navlinks > a:not(.navcta) { flex:1; min-width:0; text-align:center; white-space:nowrap; padding:6px 3px; font-size:.85rem; }
  .navlinks .navcta { display:none; }
  .hero { padding:30px 0 36px; background:linear-gradient(145deg,#fff 0%,#fff4f9 100%); }
  .hero-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:20px; }
  .eyebrow { font-size:.7rem; letter-spacing:.09em; }
  h1 { font-size:clamp(1.9rem,8.2vw,2.75rem); line-height:1.12; letter-spacing:-.038em; margin:10px 0 13px; }
  .lead { font-size:1rem; line-height:1.55; }
  .actions { margin-top:17px; gap:9px; }
  .actions .btn { width:100%; min-height:47px; padding:10px 13px; font-size:.92rem; }
  .fine { font-size:.8rem; margin-top:12px; line-height:1.45; }
  .hero-art { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; width:100%; max-width:none; min-height:0; transform:none; }
  .art, .art:nth-child(2), .art:nth-child(3) { transform:none; }
  .art { min-width:0; min-height:110px; border-radius:14px; padding:12px; gap:7px; }
  .art-icon { width:37px; height:37px; font-size:1.25rem; border-radius:10px; }
  .art b { font-size:.88rem; }
  .art small { display:block; font-size:.72rem; line-height:1.35; }
  .section { padding:40px 0; }
  .section-head { text-align:left; margin-bottom:20px; }
  .section h2 { font-size:clamp(1.55rem,6.3vw,2.15rem); line-height:1.2; margin:8px 0 11px; }
  .section-head p { font-size:.94rem; line-height:1.55; }
  .cards { grid-template-columns:minmax(0,1fr); gap:11px; }
  .service { padding:16px; border-radius:14px; }
  .service-icon { width:42px; height:42px; font-size:1.35rem; border-radius:10px; margin-bottom:9px; }
  .service h3 { font-size:1.18rem; margin:0 0 3px; }
  .service p { font-size:.9rem; line-height:1.5; margin-bottom:11px; }
  .textlink { font-size:.9rem; }
  .values { grid-template-columns:minmax(0,1fr); gap:11px; margin-top:20px; }
  .value { padding:16px; border-radius:14px; }
  .value .num { font-size:1.05rem; }
  .value h3 { margin:3px 0; font-size:1.08rem; }
  .value p { font-size:.9rem; }
  .callout { border-radius:15px; padding:21px; gap:16px; }
  .callout .btn { width:100%; min-height:45px; }
  footer { padding:31px 0 19px; }
  .foot { grid-template-columns:minmax(0,1fr); gap:17px; }
  .foot .logo { font-size:1.35rem; }
  .foot h3 { margin-bottom:4px; }
  .foot a { margin:5px 0; }
  .copyright { margin-top:18px; padding-top:15px; line-height:1.5; }
  .page { padding:34px 18px 52px; }
  .page h1 { font-size:clamp(1.8rem,7.4vw,2.4rem); }
  .page h2 { margin-top:24px; font-size:1.2rem; }
  .page p,.page li { font-size:.96rem; }
  .page .btn { max-width:100%; font-size:.92rem; text-align:center; }
}
@media (max-width: 360px) {
  .wrap { padding-left:14px; padding-right:14px; }
  nav .logo { font-size:1.13rem; }
  .navlinks > a:not(.navcta) { font-size:.8rem; }
  .hero { padding-top:24px; }
  .art { padding:10px; min-height:105px; }
  .art b { font-size:.82rem; }
  .art small { font-size:.68rem; }
}

/* Button text visibility fix */
.page a.btn, .page a.btn:visited{color:#fff}.page a.btn.secondary, .page a.btn.secondary:visited{color:var(--ink)}

/* Contact action: always readable against pink, including visited links */
.page a.btn:not(.secondary), .page a.btn:not(.secondary):link, .page a.btn:not(.secondary):visited, .page a.btn:not(.secondary):hover, .page a.btn:not(.secondary):focus { color: #fff !important; }
