/* Strandperle – site styles. Fonts are served from this server (no third-party requests). */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/inter.woff2) format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/inter-tight.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/fraunces.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:100 900;font-display:swap;src:url(fonts/fraunces-italic.woff2) format('woff2')}

/* ---------- layout classes generated from the design ---------- */
.c1{font-family: 'Inter', system-ui, sans-serif; color: #161616; background: #ffffff}
.c2{position: relative; display: flex; flex-wrap: wrap}
.c3{box-sizing: border-box; display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: center; gap: 16px}
.c4{font-family: 'Inter Tight', sans-serif; letter-spacing: 0.22em; font-weight: 500; text-decoration: none; white-space: nowrap}
.c5{color: #e2513f}
.c6{display: flex; flex-wrap: nowrap; justify-content: flex-end; gap: 8px; white-space: nowrap; flex-shrink: 0}
.c7{background: rgba(255,255,255,0.88); padding: 9px 14px; border-radius: 999px; font-size: 14px; font-weight: 500; text-decoration: none}
.c8{display: inline-flex; align-items: center; gap: 2px; background: rgba(255,255,255,0.88); padding: 4px; border-radius: 999px; font-size: 13px; font-weight: 600}
.c9{background: #161616; color: #ffffff; padding: 5px 9px; border-radius: 999px}
.c10{padding: 5px 9px; border-radius: 999px; text-decoration: none}
.c11{background: #161616; color: #ffffff; border: 0; padding: 9px 16px; border-radius: 999px; font-family: inherit; font-size: 14px; font-weight: 500; cursor: pointer}
.c12{width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,0.88); color: #161616; align-items: center; justify-content: center; cursor: pointer; flex-shrink: 0}
.c13{position: absolute; top: 100%; left: 0; right: 0; background: #fff3d1; padding: 0 clamp(20px, 4vw, 64px) 12px; box-shadow: 0 16px 24px rgba(22,22,22,0.10); flex-direction: column}
.c14{display: flex; justify-content: space-between; align-items: center; padding: 16px 0; border-top: 1px solid rgba(22,22,22,0.2); font-size: 18px; font-weight: 500; text-decoration: none}
.c15{display: flex; align-items: center; gap: 12px; padding: 16px 0; border-top: 1px solid rgba(22,22,22,0.2); font-size: 15px; font-weight: 500}
.c16{background: #161616; color: #ffffff; padding: 6px 12px; border-radius: 999px; font-weight: 600}
.c17{background: #ffffff; padding: 6px 12px; border-radius: 999px; font-weight: 600; text-decoration: none}
.c18{flex: 1 1 480px; min-width: 0; background: #fff3d1; padding: 28px clamp(20px, 4vw, 64px) clamp(48px, 5vw, 72px); display: flex; flex-direction: column; justify-content: center}
.c19{display: flex; flex-direction: column; gap: 24px}
.c20{margin: 0; font-size: 13px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase}
.c21{margin: 0; font-family: 'Fraunces', Georgia, serif; font-size: clamp(56px, 7.2vw, 108px); line-height: 0.98; font-weight: 400; letter-spacing: -0.02em}
.c22{margin: 0; font-size: 18px; line-height: 1.55; max-width: 480px}
.c23{display: flex; flex-wrap: wrap; gap: 12px}
.c24{display: inline-flex; align-items: center; gap: 10px; background: #161616; color: #ffffff; padding: 14px 22px; border-radius: 999px; font-size: 15px; font-weight: 500; text-decoration: none}
.c25{display: inline-flex; align-items: center; gap: 10px; box-shadow: inset 0 0 0 1.5px #161616; padding: 14px 22px; border-radius: 999px; font-size: 15px; font-weight: 500; text-decoration: none}
.c26{flex: 1 1 480px; min-width: 0; margin: 0; position: relative; min-height: 460px; background: #cfeaf3}
.c27{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block}
.c28{background: #d7f1ec; padding: clamp(56px, 6vw, 88px) clamp(20px, 4vw, 64px)}
.c29{max-width: 1312px; margin: 0 auto; display: flex; flex-direction: column; gap: 48px}
.c30{display: flex; flex-direction: column; gap: 20px}
.c31{margin: 0; font-family: 'Fraunces', Georgia, serif; font-size: clamp(40px, 4.2vw, 60px); line-height: 1.02; font-weight: 400; letter-spacing: -0.015em}
.c32{margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr)); gap: 32px 28px}
.c33{display: flex; flex-direction: column; gap: 12px}
/* process step titles that link to the service pages: no underline, only on hover/focus */
.c33 a{text-decoration: none}
.c33 a:hover, .c33 a:focus-visible{text-decoration: underline; text-underline-offset: 4px}
.c34{display: flex; align-items: center; gap: 14px; min-height: 30px}
.c35{font-family: 'Inter Tight', sans-serif; font-size: 30px; line-height: 1; font-weight: 600; color: #b2402c}
.c36{font-size: 15px; font-weight: 600; line-height: 1.3}
.c37{font-size: 14px; line-height: 1.5; color: #3f4a47}
.c38{font-family: 'Inter Tight', sans-serif; font-size: 30px; line-height: 1; font-weight: 600; color: #1f6f8c}
.c39{font-family: 'Inter Tight', sans-serif; font-size: 30px; line-height: 1; font-weight: 600; color: #1f7a5e}
.c40{font-family: 'Inter Tight', sans-serif; font-size: 30px; line-height: 1; font-weight: 600; color: #8a6400}
.c41{font-family: 'Inter Tight', sans-serif; font-size: 30px; line-height: 1; font-weight: 600; color: #161616}
.c42{display: flex; flex-wrap: wrap; min-height: 720px}
.c43{flex: 1 1 480px; min-width: 0; margin: 0; position: relative; min-height: 440px}
.c44{flex: 1 1 480px; min-width: 0; background: #fbdbd5; padding: clamp(48px, 5vw, 72px) clamp(20px, 4vw, 64px); display: flex; flex-direction: column; justify-content: space-between; gap: 40px}
.c45{margin: 0; font-size: 17px; line-height: 1.55; max-width: 500px}
.c46{align-self: flex-start; display: inline-flex; align-items: center; gap: 10px; box-shadow: inset 0 0 0 1.5px #161616; padding: 13px 20px; border-radius: 999px; font-size: 15px; font-weight: 500; text-decoration: none}
.c47{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px}
.c48{width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; border-radius: 6px}
.c49{display: flex; flex-wrap: wrap-reverse; min-height: 560px}
.c50{flex: 1 1 480px; min-width: 0; background: #cfeaf3; padding: clamp(48px, 5vw, 72px) clamp(20px, 4vw, 64px); display: flex; flex-direction: column; justify-content: center; gap: 20px}
.c51{flex: 1 1 480px; min-width: 0; margin: 0; position: relative; min-height: 440px; background: #4d5a5c}
.c52{position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%)}
.c53{width: 72px; height: 72px; padding: 0; border-radius: 50%; border: 0; background: #ffffff; display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 8px 24px rgba(0,0,0,0.25)}
.c54{display: flex; flex-wrap: nowrap; min-height: 520px; background: #fff3d1}
.c55{flex: 1 1 320px; min-width: 0; background: #fff3d1; padding: clamp(48px, 5vw, 72px) clamp(20px, 4vw, 64px); display: flex; flex-direction: column; justify-content: center; gap: 20px}
.c56{flex: 1 1 320px; min-width: 0; background: #fff3d1; padding: clamp(40px, 5vw, 64px) clamp(20px, 4vw, 64px); display: flex; flex-direction: column; justify-content: center; align-items: flex-end; gap: 16px}
.c57{font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(88px, 14.5vw, 210px); line-height: 1; padding-bottom: 0.14em; letter-spacing: -0.03em; white-space: nowrap}
.c58{font-style: italic; color: #c8442f}
.c59{font-style: italic}
.c60{background: #f4f4f1; padding: clamp(56px, 6vw, 88px) clamp(20px, 4vw, 64px)}
.c61{max-width: 1312px; margin: 0 auto; display: flex; flex-direction: column; gap: clamp(40px, 5vw, 64px)}
.c62{display: flex; flex-wrap: wrap; align-items: center; gap: 32px 64px}
.c63{flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 20px}
.c64{margin: 0; font-family: 'Fraunces', Georgia, serif; font-size: clamp(34px, 3.6vw, 52px); line-height: 1.08; font-weight: 400; letter-spacing: -0.015em}
.c65{flex: 1 1 380px; min-width: 0; margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 12px}
.c66{padding: 11px 20px; border-radius: 999px; background: #fbdbd5; font-size: 14px; font-weight: 500}
.c67{padding: 11px 20px; border-radius: 999px; background: #d7f1ec; font-size: 14px; font-weight: 500}
.c68{padding: 11px 20px; border-radius: 999px; background: #cfeaf3; font-size: 14px; font-weight: 500}
.c69{padding: 11px 20px; border-radius: 999px; background: #fff3d1; font-size: 14px; font-weight: 500}
.c70{padding: 11px 20px; border-radius: 999px; background: #ffffff; font-size: 14px; font-weight: 500}
.c71{margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); gap: 28px 40px}
.c72{display: flex; flex-direction: column; gap: 8px; border-top: 1.5px solid #161616; padding-top: 16px}
.c73{font-family: 'Fraunces', Georgia, serif; font-size: 28px; line-height: 1.1; font-weight: 400; letter-spacing: -0.01em}
.c74{font-size: 15px; line-height: 1.45; color: #55554f}
.c75{background: #fff3d1; padding: clamp(64px, 7vw, 104px) clamp(20px, 4vw, 64px)}
.c76{max-width: 1312px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: flex-end; gap: 48px 80px}
.c77{flex: 1.2 1 440px; min-width: 0; display: flex; flex-direction: column; gap: 28px}
.c78{margin: 0; font-family: 'Fraunces', Georgia, serif; font-size: clamp(48px, 5.6vw, 84px); line-height: 1; font-weight: 400; letter-spacing: -0.015em}
.c79{display: inline-flex; align-items: center; gap: 10px; background: #161616; color: #ffffff; border: 0; padding: 14px 22px; border-radius: 999px; font-family: inherit; font-size: 15px; font-weight: 500; cursor: pointer}
.c80{flex: 1 1 380px; min-width: 0; display: flex; flex-direction: column; gap: 24px}
.c81{margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; border-top: 1.5px solid #161616}
.c82{display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; padding: 14px 0; border-bottom: 1px solid rgba(22,22,22,0.28)}
.c83{width: 56px; height: 56px; border-radius: 50%; object-fit: cover; display: block; flex-shrink: 0}
.c84{font-family: 'Fraunces', Georgia, serif; font-size: 24px; line-height: 1.15; font-weight: 400}
.c85{margin-left: auto; font-size: 14px; color: #3f3f3a}
.c86{display: flex; flex-wrap: wrap; gap: 8px 32px; font-size: 16px; font-weight: 500}
.c87{text-decoration: none}
.c88{text-underline-offset: 4px}
.c89{padding: 24px clamp(20px, 4vw, 64px); font-size: 13px}
.c90{max-width: 1312px; margin: 0 auto; display: flex; flex-direction: column; align-items: flex-start; gap: 12px}
/* footer line 1: brand + address */
.sp-footrow{display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 20px}
.c91{font-family: 'Inter Tight', sans-serif; font-size: 14px; letter-spacing: 0.22em; font-weight: 500}
.c92{color: #55554f}
.c93{display: flex; flex-wrap: wrap; gap: 8px 20px}
.c94{text-decoration: none; font-weight: 500}
.c95{background: none; border: 0; padding: 0; font: inherit; color: inherit; cursor: pointer}
.c96{position: fixed; inset: 0; z-index: 50; display: flex; align-items: center; justify-content: center; padding: 20px}
.c97{position: absolute; inset: 0; border: 0; background: rgba(22,22,22,0.45); cursor: pointer}
.c98{position: relative; width: 100%; max-width: 560px; max-height: calc(100vh - 40px); overflow: auto; background: #fff3d1; border-radius: 20px; padding: clamp(24px, 4vw, 40px); display: flex; flex-direction: column; gap: 24px; box-shadow: 0 24px 64px rgba(0,0,0,0.25)}
.c99{display: flex; justify-content: space-between; align-items: flex-start; gap: 16px}
.c100{display: flex; flex-direction: column; gap: 10px}
.c101{margin: 0; font-family: 'Fraunces', Georgia, serif; font-size: clamp(30px, 3.4vw, 40px); line-height: 1.05; font-weight: 400; letter-spacing: -0.02em}
.c102{margin: 0; font-size: 15px; line-height: 1.5; color: #3f3f3a}
.c103{width: 44px; height: 44px; flex-shrink: 0; border: 0; border-radius: 50%; background: #ffffff; display: flex; align-items: center; justify-content: center; cursor: pointer}
.c104{display: flex; flex-direction: column; gap: 16px}
.c105{display: grid; grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr)); gap: 16px}
.c106{display: flex; flex-direction: column; gap: 6px}
.c107{font-size: 13px; font-weight: 500}
.c108{padding: 12px 14px; border: 1.5px solid #c9c9c3; border-radius: 10px; font-family: inherit; font-size: 15px; color: #161616; background: #ffffff}
.c109{position: relative; display: flex}
.c110{padding: 12px 14px; border: 1.5px solid #c9c9c3; border-radius: 10px; font-family: inherit; font-size: 15px; color: #161616; background: #ffffff; padding-right: 40px; width: 100%; box-sizing: border-box; appearance: none; -webkit-appearance: none}
.c111{position: absolute; right: 14px; top: 50%; transform: translateY(-50%); pointer-events: none}
.c112{display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding-top: 4px}
.c113{font-size: 13px; color: #3f3f3a}
.c114{font-weight: 500}
.c115{display: flex; flex-direction: column; gap: 16px; padding: 8px 0}
.c116{width: 56px; height: 56px; border-radius: 50%; background: #d7f1ec; color: #1f7a5e; display: flex; align-items: center; justify-content: center}
.c117{margin: 0; font-size: 18px; font-weight: 500}
.c118{align-self: flex-start; box-shadow: inset 0 0 0 1.5px #161616; background: transparent; border: 0; padding: 12px 20px; border-radius: 999px; font-family: inherit; font-size: 15px; font-weight: 500; cursor: pointer}
.c119{position: relative; background: #fbdbd5}
.c120{box-shadow: inset 0 0 0 1.5px #161616; background: rgba(255,255,255,0.88); padding: 9px 14px; border-radius: 999px; font-size: 14px; font-weight: 500; text-decoration: none}
.c121{max-width: 1312px; margin: 0 auto; box-sizing: content-box; padding: 0 clamp(20px, 4vw, 64px) clamp(56px, 6vw, 88px); display: flex; flex-wrap: wrap; align-items: flex-end; gap: 40px 80px}
.c122{flex: 1.5 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 24px}
.c123{margin: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(40px, 5.2vw, 76px); line-height: 1.02; letter-spacing: -0.02em}
.c124{margin: 0; font-size: 18px; line-height: 1.6; max-width: 680px}
.c125{flex: 1 1 340px; max-width: 460px; min-width: 0; background: #ffffff; border-radius: 20px; overflow: hidden; display: flex; flex-direction: column}
.c126{width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: center 30%; display: block}
.c127{padding: 24px 28px 28px; display: flex; flex-direction: column; gap: 16px}
.c128{display: flex; flex-direction: column; gap: 2px}
.c129{font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: 26px; line-height: 1.15}
.c130{font-size: 14px; color: #55554f}
.c131{font-size: 18px; font-weight: 500; text-decoration: none}
.c132{display: flex; flex-wrap: wrap; gap: 10px}
.c133{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr))}
.c134{width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block}
.c135{background: #fff3d1; padding: clamp(56px, 6vw, 96px) clamp(20px, 4vw, 64px)}
.c136{max-width: 1312px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 32px 80px}
.c137{flex: 1 1 380px; min-width: 0; display: flex; flex-direction: column; gap: 20px}
.c138{margin: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.06; letter-spacing: -0.015em}
.c139{flex: 1.4 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 18px}
.c140{margin: 0; font-size: 17px; line-height: 1.65}
.c141{background: #ffffff; padding: clamp(40px, 5vw, 72px) clamp(20px, 4vw, 64px)}
.c142{max-width: 1312px; margin: 0 auto; display: flex; flex-direction: column}
.c143{display: flex; flex-wrap: wrap; gap: 16px 80px; padding: clamp(28px, 3vw, 44px) 0; border-top: 1.5px solid #161616}
.c144{flex: 1 1 320px; min-width: 0; margin: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(26px, 2.6vw, 38px); line-height: 1.1; letter-spacing: -0.01em}
.c145{flex: 1.6 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 16px}
.c146{margin: 0; overflow: hidden}
.c147{width: 100%; height: clamp(240px, 34vw, 520px); object-fit: cover; object-position: center; display: block}
.c148{background: #fbdbd5; padding: clamp(64px, 7vw, 104px) clamp(20px, 4vw, 64px)}
.c149{max-width: 1312px; margin: 0 auto; display: flex; flex-direction: column; gap: 32px}
.c150{margin: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(28px, 3.4vw, 50px); line-height: 1.12; letter-spacing: -0.015em; max-width: 1040px}
.c151{max-width: 1312px; margin: 0 auto; display: flex; flex-direction: column; gap: 36px}
.c152{margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); gap: 20px}
.c153{display: flex}
.c154{flex: 1; background: #d7f1ec; border-radius: 20px; padding: 28px; min-height: 180px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; text-decoration: none}
.c155{font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(23px, 6vw, 28px); line-height: 1.1; letter-spacing: -0.01em; hyphens: auto; overflow-wrap: break-word}
.c156{font-size: 15px; line-height: 1.5; color: #3f3f3a}
.c157{flex: 1; background: #cfeaf3; border-radius: 20px; padding: 28px; min-height: 180px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; text-decoration: none}
.c158{flex: 1; background: #ffffff; border-radius: 20px; padding: 28px; min-height: 180px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; text-decoration: none}
.c159{flex: 1; background: #fff3d1; border-radius: 20px; padding: 28px; min-height: 180px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; text-decoration: none}
.c160{position: relative; background: #d7f1ec}
.c161{width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: center 20%; display: block}
.c162{width: 100%; height: clamp(240px, 34vw, 520px); object-fit: cover; object-position: center 60%; display: block}
.c163{font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(72px, 9vw, 132px); line-height: 1; padding: 0.1em 0 0.14em; letter-spacing: -0.03em; white-space: nowrap}
.c164{background: #d7f1ec; padding: clamp(64px, 7vw, 104px) clamp(20px, 4vw, 64px)}
.c165{flex: 1; background: #fbdbd5; border-radius: 20px; padding: 28px; min-height: 180px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; text-decoration: none}
.c166{position: relative; background: #cfeaf3}
.c167{width: 100%; aspect-ratio: 3 / 2; object-fit: cover; object-position: center 25%; display: block}
.c168{font-weight: 600}
.c169{background: #cfeaf3; padding: clamp(64px, 7vw, 104px) clamp(20px, 4vw, 64px)}
.c170{position: relative; background: #fff3d1}
.c171{flex: 1 1 320px; max-width: 420px; min-width: 0; background: #ffffff; border-radius: 20px; padding: 28px; display: flex; flex-direction: column; gap: 18px}
.c172{font-style: normal; font-size: 17px; line-height: 1.55}
.c173{font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: 24px; line-height: 1.2}
.c174{margin: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px 16px; font-size: 16px}
.c175{margin: 0}
.c176{font-weight: 500; text-decoration: none}
.c177{font-weight: 500; text-underline-offset: 4px}
.c178{background: #ffffff; padding: clamp(56px, 6vw, 88px) clamp(20px, 4vw, 64px)}
.c179{max-width: 1312px; margin: 0 auto; display: flex; flex-direction: column; gap: 40px}
.c180{display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 32px 64px}
.c181{flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 20px}
.c182{flex: 1 1 360px; min-width: 0; max-width: 640px; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 20px; display: block}
.c183{margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr)); gap: 32px 32px}
.c184{display: flex; flex-direction: column; gap: 16px; border-top: 1.5px solid #161616; padding-top: 24px}
.c185{width: 112px; height: 112px; border-radius: 50%; object-fit: cover; display: block}
.c186{display: flex; flex-direction: column; gap: 4px}
.c187{font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: 28px; line-height: 1.1}
.c188{font-size: 15px; color: #55554f}
.c189{width: 112px; height: 112px; border-radius: 50%; background: #f4f4f1; display: flex; align-items: center; justify-content: center; font-size: 28px; font-weight: 600; color: #55554f}
.c190{background: #d7f1ec; padding: clamp(56px, 6vw, 96px) clamp(20px, 4vw, 64px)}
.c191{background: #fbdbd5; padding: clamp(56px, 6vw, 96px) clamp(20px, 4vw, 64px)}
.c192{background: #cfeaf3; padding: clamp(56px, 6vw, 96px) clamp(20px, 4vw, 64px)}
.c193{font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: 32px; line-height: 1.1}
.c194{margin: 0; font-size: 16px; line-height: 1.55; color: #3f3f3a}
.c195{position: relative; background: #f4f4f1}
.c196{max-width: 1312px; margin: 0 auto; box-sizing: content-box; padding: 0 clamp(20px, 4vw, 64px) clamp(40px, 5vw, 64px); display: flex; flex-direction: column; gap: 20px}
.c197{margin: 0; font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(36px, 4.6vw, 64px); line-height: 1.04; letter-spacing: -0.02em; max-width: 900px; hyphens: auto}
.c198{background: #ffffff; padding: clamp(40px, 5vw, 72px) clamp(20px, 4vw, 64px) clamp(56px, 6vw, 96px)}
.c199{max-width: 1312px; margin: 0 auto}
.c200{max-width: 760px; display: flex; flex-direction: column; gap: 14px}
.c201{margin: 28px 0 0; font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.15; letter-spacing: -0.01em}
.c202{margin: 0; font-size: 15px; line-height: 1.6; color: #55554f; background: #f4f4f1; border-radius: 10px; padding: 12px 16px}
.c203{margin: 12px 0 0; font-size: 17px; font-weight: 600}
.c204{width: 100%; height: clamp(240px, 34vw, 520px); object-fit: cover; object-position: center 65%; display: block}

/* ---------- components and motion ---------- */
body{margin:0}
a{color:#161616}
.sp-header{position:fixed;padding:22px clamp(20px,4vw,64px);background-color:rgba(255,243,209,0);top:0;left:0;right:0;z-index:20;transition:padding .25s ease,background-color .25s ease,box-shadow .25s ease}
.sp-logo{font-size:clamp(16px,2.6vw,34px);transition:font-size .25s ease}
.sp-herotext{padding-top:128px !important}
@media (max-width:1023px){.sp-herotext{padding-top:112px !important}}
.sp-burger{display:none}.sp-menu{display:none}
@media (max-width:1019px){.sp-navlink{display:none !important}.sp-burger{display:flex}.sp-menu{display:flex}}
@media (max-width:479px){.sp-cta{font-size:13px !important;padding:8px 12px !important}}
@media (max-width:399px){.sp-logo{font-size:12px !important;letter-spacing:0.1em !important}.sp-burger{width:40px !important;height:40px !important}}
@media (max-width:767px){.sp-schrift{flex-direction:column !important;min-height:0 !important}.sp-schrift>div{flex:0 0 auto !important}.sp-specimen{align-items:flex-start !important;padding-top:0 !important}.sp-glyphs{font-size:min(31vw,230px) !important}}
a>svg,button>svg{transition:transform .25s ease}
a:hover>svg,button:not(.sp-burger):hover>svg{transform:translateX(4px)}
.sp-line{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}
.sp-word{display:inline-block}
.sp-motion .is-in .sp-eyebrow,.sp-motion .is-in.sp-eyebrow{transition:letter-spacing 1.1s cubic-bezier(.2,.7,.2,1),opacity .8s ease}
.sp-motion .sp-line:nth-child(1) .sp-word{animation:sp-rise 1s cubic-bezier(.2,.7,.2,1) 0.00s both,sp-lit 1.4s cubic-bezier(.45,.05,.55,.95) 1.4s forwards,sp-spot1 10s cubic-bezier(.45,.05,.55,.95) 2.8s infinite}
.sp-motion .sp-line:nth-child(2) .sp-word{animation:sp-rise 1s cubic-bezier(.2,.7,.2,1) 0.09s both,sp-dim 1.4s cubic-bezier(.45,.05,.55,.95) 1.4s forwards,sp-spot2 10s cubic-bezier(.45,.05,.55,.95) 2.8s infinite}
.sp-motion .sp-line:nth-child(3) .sp-word{animation:sp-rise 1s cubic-bezier(.2,.7,.2,1) 0.18s both,sp-dim 1.4s cubic-bezier(.45,.05,.55,.95) 1.4s forwards,sp-spot3 10s cubic-bezier(.45,.05,.55,.95) 2.8s infinite}
.sp-motion .sp-line:nth-child(4) .sp-word{animation:sp-rise 1s cubic-bezier(.2,.7,.2,1) 0.27s both,sp-dim 1.4s cubic-bezier(.45,.05,.55,.95) 1.4s forwards,sp-spot4 10s cubic-bezier(.45,.05,.55,.95) 2.8s infinite}
.sp-motion .sp-load{animation:sp-fade .8s ease both}
.sp-motion .sp-load-1{animation-delay:.5s}
.sp-motion .sp-load-2{animation-delay:.65s}
.sp-motion [data-reveal]:not(.sp-stagger):not(.sp-zoom):not(.sp-kids){opacity:0;transform:translateY(36px)}
.sp-motion [data-reveal].is-in:not(.sp-stagger):not(.sp-zoom):not(.sp-kids){opacity:1;transform:none;transition:opacity .9s ease,transform 1s cubic-bezier(.2,.7,.2,1)}
.sp-motion .sp-stagger>*,.sp-motion .sp-kids>*{opacity:0;transform:translateY(32px)}
.sp-motion .sp-stagger.is-in>*,.sp-motion .sp-kids.is-in>*{opacity:1;transform:none;transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.sp-motion .is-in>*:nth-child(2){transition-delay:.11s}
.sp-motion .is-in>*:nth-child(3){transition-delay:.22s}
.sp-motion .is-in>*:nth-child(4){transition-delay:.33s}
.sp-motion .is-in>*:nth-child(5){transition-delay:.44s}
.sp-motion .is-in>*:nth-child(6){transition-delay:.55s}
.sp-motion .is-in>*:nth-child(7){transition-delay:.66s}
.sp-motion .is-in>*:nth-child(8){transition-delay:.77s}
.sp-motion .is-in>*:nth-child(9){transition-delay:.88s}
.sp-motion .is-in>*:nth-child(10){transition-delay:.99s}
.sp-motion [data-reveal]:not(.is-in) .sp-eyebrow{letter-spacing:.34em !important;opacity:0}
.sp-motion .sp-zoom{overflow:hidden}
.sp-motion .sp-zoom img{transform:scale(1.18)}
.sp-motion .sp-zoom.is-in img{transform:none;transition:transform 2.4s cubic-bezier(.2,.7,.2,1)}
.sp-motion .sp-specimen.is-in .sp-glyphs{animation:sp-settle 2.2s cubic-bezier(.3,.6,.2,1) both}
@media print{.sp-motion *{animation:none !important;opacity:1 !important;transform:none !important}}
@keyframes sp-settle{0%{font-weight:200;letter-spacing:.04em}55%{font-weight:620}}
@keyframes sp-dim{to{opacity:.42}}
@keyframes sp-lit{to{font-weight:520}}
@keyframes sp-spot1{0%{opacity:1;font-weight:520}8%{opacity:1;font-weight:520}26%{opacity:.42;font-weight:400}91%{opacity:.42;font-weight:400}100%{opacity:1;font-weight:520}}
@keyframes sp-spot2{0%{opacity:.42;font-weight:400}16%{opacity:.42;font-weight:400}25%{opacity:1;font-weight:520}33%{opacity:1;font-weight:520}51%{opacity:.42;font-weight:400}100%{opacity:.42;font-weight:400}}
@keyframes sp-spot3{0%{opacity:.42;font-weight:400}41%{opacity:.42;font-weight:400}50%{opacity:1;font-weight:520}58%{opacity:1;font-weight:520}76%{opacity:.42;font-weight:400}100%{opacity:.42;font-weight:400}}
@keyframes sp-spot4{0%{opacity:.42;font-weight:400}66%{opacity:.42;font-weight:400}75%{opacity:1;font-weight:520}83%{opacity:1;font-weight:520}100%{opacity:.42;font-weight:400}100%{opacity:.42;font-weight:400}}
@keyframes sp-rise{from{transform:translateY(110%);font-weight:300}}
@keyframes sp-fade{from{opacity:0;transform:translateY(14px)}}
@media (prefers-reduced-motion:reduce){.sp-header,.sp-logo{transition:none}.sp-motion *{animation:none !important;transition:none !important;opacity:1 !important;transform:none !important}}
@media (max-width:599px){.sp-strip img{aspect-ratio:3 / 4 !important}}

/* ---------- states that the script switches ---------- */
.if{display:contents}.if[hidden]{display:none}
.is-scrolled .sp-header,.menu-open .sp-header{padding-top:12px;padding-bottom:12px;background-color:rgba(255,243,209,.96);box-shadow:0 1px 0 rgba(22,22,22,.12)}
.is-scrolled .sp-logo{font-size:clamp(15px,1.6vw,17px)}
html{-webkit-text-size-adjust:100%}
:focus-visible{outline:2px solid #161616;outline-offset:3px}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:#161616;color:#fff;padding:10px 16px;border-radius:999px;font:500 14px 'Inter',system-ui,sans-serif}
.skip:focus{left:8px}
/* ---------- cookie banner ---------- */
.ck{position:fixed;left:0;right:0;bottom:0;z-index:60;padding:16px;display:flex;justify-content:center;pointer-events:none;font-family:'Inter',system-ui,sans-serif;color:#161616}
.ck[hidden]{display:none}
.ck-box{pointer-events:auto;width:100%;max-width:720px;background:#fff;border-radius:20px;padding:24px;box-shadow:0 16px 48px rgba(0,0,0,.22);display:flex;flex-direction:column;gap:12px}
.ck-title{margin:0;font-family:'Fraunces',Georgia,serif;font-size:24px;line-height:1.15}
.ck-text{margin:0;font-size:15px;line-height:1.5;color:#3f3f3a}
.ck-options{display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.45}
.ck-options[hidden]{display:none}
.ck-opt{display:flex;gap:10px;align-items:flex-start}
.ck-opt input{margin-top:3px;width:18px;height:18px;accent-color:#161616}
.ck-opt em{font-style:normal;color:#55554f;margin-left:6px}
.ck-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}
.ck-btn{font:500 15px 'Inter',system-ui,sans-serif;padding:12px 20px;border-radius:999px;border:0;background:transparent;box-shadow:inset 0 0 0 1.5px #161616;color:#161616;cursor:pointer}
.ck-btn[hidden]{display:none}
.ck-primary{background:#161616;color:#fff;box-shadow:none}
.ck-quiet{box-shadow:none;text-decoration:underline;text-underline-offset:4px;padding-left:8px;padding-right:8px}
