:root{--pink:#ef3c82;--pink-dark:#cc2167;--ink:#19151c;--muted:#655e68;--cream:#fff8f5;--white:#fff;--line:#eadde2}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.6}a{color:inherit}img{max-width:100%}.site-header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);background:rgba(255,248,245,.92);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(234,221,226,.75)}.brand{display:flex;align-items:center;text-decoration:none}.brand img{height:74px;width:auto;max-width:230px;object-fit:contain}.brand-fallback{line-height:1;color:var(--ink)}.brand-fallback strong{display:block;font-family:"Playfair Display",serif;font-size:24px;color:var(--pink)}.brand-fallback small{text-transform:uppercase;letter-spacing:.2em;font-weight:700}nav{display:flex;gap:32px;align-items:center}nav a{text-decoration:none;font-weight:600;font-size:15px}nav a:hover{color:var(--pink)}.menu-button{display:none;background:var(--ink);color:white;border:0;border-radius:99px;padding:10px 17px;font:600 14px inherit}.hero{min-height:690px;padding:90px max(7vw,28px);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);align-items:center;gap:7vw;overflow:hidden;background:radial-gradient(circle at 90% 15%,rgba(239,60,130,.14),transparent 30%),var(--cream)}.eyebrow{color:var(--pink-dark);text-transform:uppercase;letter-spacing:.18em;font-size:13px;font-weight:800;margin:0 0 18px}.hero h1,.section-heading h2,.process h2,.contact h2{font-family:"Playfair Display",serif;line-height:1.02;margin:0}.hero h1{font-size:clamp(52px,7.5vw,104px);letter-spacing:-.055em;max-width:900px}.hero h1 span{color:var(--pink)}.intro{font-size:clamp(18px,2vw,22px);max-width:650px;color:var(--muted);margin:30px 0 34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.button{padding:14px 22px;border-radius:100px;text-decoration:none;font-weight:700;transition:.2s ease}.button:hover{transform:translateY(-2px)}.primary{background:var(--ink);color:white}.secondary{border:2px solid var(--ink)}.stitch-card{position:relative;background:var(--pink);color:white;border-radius:48% 48% 42% 42%;aspect-ratio:.88;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:24px 28px 0 var(--ink);transform:rotate(2deg);padding:35px}.stitch-card:after{content:"";position:absolute;inset:18px;border:2px dashed rgba(255,255,255,.72);border-radius:inherit}.stitch-card p{font-size:15px;text-transform:uppercase;letter-spacing:.18em;margin:0 0 10px}.stitch-card strong{font-family:"Playfair Display",serif;font-size:clamp(36px,4vw,62px);line-height:1}.stitch-card span{margin-top:22px;font-weight:600}.trust-strip{background:var(--ink);color:white;padding:22px max(5vw,24px);display:flex;justify-content:center;gap:clamp(28px,6vw,90px);flex-wrap:wrap;font-weight:600}.trust-strip span:before{content:"✦";color:var(--pink);margin-right:12px}.services{padding:110px max(7vw,28px)}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:50px;align-items:start;margin-bottom:60px}.section-heading h2,.process h2,.contact h2{font-size:clamp(38px,5vw,68px);letter-spacing:-.035em}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.service-grid article{padding:34px 28px 20px;border-right:1px solid var(--line)}.service-grid article:last-child{border-right:0}.service-grid article span{color:var(--pink);font-weight:800}.service-grid h3{font-family:"Playfair Display",serif;font-size:28px;margin:42px 0 12px}.service-grid p{color:var(--muted);margin:0}.process{background:var(--ink);color:white;padding:100px max(7vw,28px);display:grid;grid-template-columns:1fr 1fr;gap:10vw}.process-intro>p:last-child{color:#cfc6d1;font-size:18px;max-width:560px}.process ol{list-style:none;margin:0;padding:0}.process li{display:flex;gap:22px;padding:25px 0;border-bottom:1px solid #433b45}.process li>span{height:43px;width:43px;flex:0 0 43px;display:grid;place-items:center;background:var(--pink);border-radius:50%;font-weight:800}.process strong{font-size:20px}.process li p{margin:3px 0 0;color:#cfc6d1}.contact{padding:120px max(7vw,28px);text-align:center;background:linear-gradient(135deg,#fff 0%,#fff0f6 100%)}.contact>p:not(.eyebrow){font-size:19px;color:var(--muted);max-width:620px;margin:24px auto 45px}.contact-links{display:grid;grid-template-columns:repeat(4,1fr);max-width:1100px;margin:auto;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:white}.contact-links a{padding:30px 20px;text-decoration:none;border-right:1px solid var(--line)}.contact-links a:last-child{border-right:0}.contact-links a:hover{background:#fff7fa}.contact-links small,.contact-links strong{display:block}.contact-links small{color:var(--muted);margin-bottom:7px}.contact-links strong{font-size:18px}footer{background:var(--pink);color:white;padding:24px max(5vw,24px);display:flex;justify-content:space-between;font-weight:600}footer a{text-decoration:none}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding-top:55px}.stitch-card{max-width:430px;margin:15px auto 35px;width:82%}.service-grid{grid-template-columns:1fr 1fr}.service-grid article:nth-child(2){border-right:0}.process{grid-template-columns:1fr;gap:35px}.section-heading{grid-template-columns:1fr;gap:0}.contact-links{grid-template-columns:1fr}.contact-links a{border-right:0;border-bottom:1px solid var(--line)}.contact-links a:last-child{border-bottom:0}}
@media(max-width:680px){.site-header{height:82px}.brand img{height:63px;max-width:185px}.menu-button{display:block}nav{display:none;position:absolute;top:82px;left:0;right:0;background:white;padding:24px;flex-direction:column;align-items:flex-start;box-shadow:0 18px 30px rgba(25,21,28,.12)}nav.open{display:flex}.hero{min-height:auto;padding:56px 24px 70px}.hero h1{font-size:clamp(46px,14vw,67px)}.button{width:100%;text-align:center}.stitch-card{box-shadow:14px 17px 0 var(--ink)}.trust-strip{justify-content:flex-start}.services,.process,.contact{padding:75px 24px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--line);padding-left:0;padding-right:0}.service-grid h3{margin-top:22px}.contact-links strong{font-size:16px}footer{gap:16px;align-items:center;font-size:14px}}
.service-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}

.hero-logo{width:100%;max-width:560px;justify-self:center;background:#fff;border-radius:24px;padding:12px;box-shadow:0 22px 54px rgba(34,21,34,.12)}.hero-logo img{display:block;width:100%;height:auto;border-radius:14px}@media(max-width:900px){.hero-logo{max-width:440px}}@media(max-width:680px){.hero{gap:24px}.hero-logo{order:-1;max-width:300px;padding:7px;border-radius:16px}.hero-logo img{border-radius:10px}}
.hero-tagline{font-size:clamp(21px,2.2vw,31px);font-weight:700;color:#087876;line-height:1.3;margin:24px 0 0}.hero .intro{margin-top:20px}.product-showcase{padding:90px max(7vw,28px) 20px;background:#fff}.showcase-heading{max-width:760px;margin-bottom:32px}.showcase-heading h2{font-family:"Playfair Display",serif;font-size:clamp(36px,4.5vw,62px);line-height:1.1;letter-spacing:-.035em;margin:0}.showcase-heading>p:last-child{font-size:19px;color:var(--muted);margin:18px 0 0}.product-showcase img{display:block;width:100%;height:auto;max-height:850px;object-fit:contain;border-radius:24px}.product-showcase+.services{padding-top:90px}@media(max-width:680px){.product-showcase{padding:66px 24px 0}.product-showcase img{border-radius:15px}.hero-tagline{margin-top:18px}}

.prices{padding:110px max(7vw,28px);background:#fff}.prices-heading{max-width:820px;margin-bottom:48px}.prices-heading h2{font-family:"Playfair Display",serif;font-size:clamp(40px,5vw,68px);line-height:1.05;letter-spacing:-.035em;margin:0}.prices-heading>p:last-child{font-size:18px;color:var(--muted);margin:20px 0 0}.price-list-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px;align-items:start}.price-card{border:1px solid var(--line);border-radius:26px;overflow:hidden;background:var(--cream);box-shadow:0 18px 48px rgba(34,21,34,.08)}.price-card-heading{padding:28px 30px;background:var(--ink);color:#fff}.price-card-heading span{display:block;color:#ff9bc2;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800}.price-card-heading h3{font-family:"Playfair Display",serif;font-size:36px;line-height:1.1;margin:6px 0 0}.price-card-print .price-card-heading{background:#087876}.price-card-print .price-card-heading span{color:#baf4ef}.price-table-wrap{overflow-x:auto}.price-card table{width:100%;border-collapse:collapse;min-width:470px}.price-card th,.price-card td{padding:15px 18px;text-align:right;border-bottom:1px solid var(--line);vertical-align:middle}.price-card th{background:#f9edf2;color:var(--muted);font-size:12px;line-height:1.25;text-transform:uppercase;letter-spacing:.06em}.price-card th:first-child,.price-card td:first-child{text-align:left}.price-card td:first-child{font-weight:650}.price-card td:last-child{color:var(--pink-dark);font-weight:800}.price-card tbody tr:last-child td{border-bottom:0}.price-note{margin:0;padding:20px 24px;background:#fff0f6;color:var(--muted);font-size:14px}.price-footer{text-align:center;color:var(--muted);font-size:18px;margin:38px 0 0}.price-footer a{color:var(--pink-dark);font-weight:800}@media(max-width:960px){.price-list-grid{grid-template-columns:1fr}.price-card table{min-width:560px}}@media(max-width:680px){.prices{padding:75px 24px}.prices-heading{margin-bottom:32px}.price-card-heading{padding:23px 22px}.price-card-heading h3{font-size:31px}.price-card th,.price-card td{padding:13px 14px}.price-card table{min-width:500px}.price-table-wrap{-webkit-overflow-scrolling:touch}.price-table-wrap:after{content:"Swipe to see all prices →";display:block;padding:10px 14px;background:#fff;color:var(--muted);font-size:12px;text-align:right}}
