.franchise-page{background:var(--cream,#F4F1EB);color:var(--ink,#2B2B2B)}
.franchise-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:7%;align-items:center;padding-block:56px var(--section-space,88px)}
.franchise-hero-copy{min-width:0;padding-block:22px}
.franchise-hero .eyebrow{font-size:15px;margin-bottom:24px;font-weight:600}
.franchise-page .franchise-hero h1{font-size:clamp(44px,4.9vw,72px);line-height:1.3;letter-spacing:-.04em;max-width:650px;margin-bottom:25px}
.franchise-intro{font-size:18px;line-height:1.95;max-width:590px;color:var(--muted,#595b56)}
.franchise-hero .button{margin-top:30px}
.franchise-photo{width:100%;max-width:100%;min-width:0;overflow:hidden;background:var(--paper,#fffdf8);border:var(--border-width,1px) solid color-mix(in srgb,var(--ink) 20%,transparent);padding:18px 18px 0;border-radius:clamp(0px,var(--radius,12px),28px)}
.franchise-photo-window{width:100%;aspect-ratio:.91;overflow:hidden;border-radius:clamp(0px,var(--photo-radius,6px),28px);background:#cbb79d}
.franchise-photo-window img{width:100%;height:100%;object-fit:cover;object-position:center var(--photo-position,52%)}
.franchise-photo figcaption{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:57px;padding:16px 2px;font-size:12px;font-weight:500}
.franchise-photo .franchise-small-logo{width:48px;height:auto;flex:0 0 48px}
.franchise-concept,.franchise-partner{display:grid;grid-template-columns:100px minmax(0,1fr);gap:28px;padding-block:var(--section-space,88px);border-top:var(--border-width,1px) solid var(--line,#d5d6ce)}
.franchise-section-number{width:56px;height:56px;border:var(--border-width,1px) solid color-mix(in srgb,var(--ink) 24%,transparent);border-radius:8px;display:grid;place-items:center;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}
.franchise-section-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:8%;align-items:start}
.franchise-page h2{font-size:clamp(30px,3.2vw,45px);line-height:1.4;font-weight:600;letter-spacing:-.03em}
.franchise-section-copy>p,.franchise-model>div>p{font-size:17px;line-height:1.95;color:var(--muted,#595b56)}
.franchise-model{display:grid;grid-template-columns:210px minmax(0,1fr);gap:7%;align-items:center;background:color-mix(in srgb,var(--sage,#8E9B88) 14%,var(--cream));border:var(--border-width,1px) solid color-mix(in srgb,var(--sage,#8E9B88) 50%,transparent);border-radius:var(--radius,12px);padding:48px 58px}
.franchise-model h2{margin-bottom:18px}
.franchise-model-mark{width:100%;min-width:0;max-width:240px;display:grid;gap:12px;padding:20px;border:var(--border-width,1px) solid var(--sage,#8E9B88);border-radius:8px;background:var(--paper,#fffdf8)}
.franchise-store-sign{border:var(--border-width,1px) solid color-mix(in srgb,var(--ink) 24%,transparent);padding:22px 18px;display:flex;justify-content:center;align-items:center;min-height:79px}
.franchise-store-sign img{width:104px;max-width:100%;height:auto}
.franchise-store-window{display:grid;grid-template-columns:1.5fr 1fr;gap:10px;min-height:77px}
.franchise-store-window span{border:var(--border-width,1px) solid color-mix(in srgb,var(--ink) 24%,transparent);background:color-mix(in srgb,var(--sage,#8E9B88) 8%,var(--paper,#fffdf8))}
.franchise-support{padding-block:var(--section-space,88px)}
.franchise-section-heading{text-align:center;max-width:760px;margin-inline:auto;margin-bottom:38px}
.franchise-section-heading .eyebrow{justify-content:center;margin-bottom:13px}
.franchise-section-heading>p:last-child{font-size:16px;color:var(--muted,#595b56);margin-top:15px;line-height:1.85}
.franchise-support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.franchise-support-grid article{border:var(--border-width,1px) solid var(--line,#d5d6ce);border-radius:var(--radius,12px);background:var(--paper,#fffdf8);padding:29px;min-height:242px}
.franchise-card-number{display:block;color:var(--muted,#595b56);font-size:13px;margin-bottom:28px;font-variant-numeric:tabular-nums}
.franchise-support-grid h3{font-size:23px;font-weight:600;margin-bottom:12px;line-height:1.4}
.franchise-support-grid p{font-size:16px;line-height:1.85;color:var(--muted,#595b56)}
.franchise-partner{padding-bottom:32px}
.franchise-responsibilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-bottom:var(--section-space,88px)}
.franchise-responsibilities article{padding:32px;border:var(--border-width,1px) solid var(--line,#d5d6ce);border-radius:var(--radius,12px);background:var(--paper,#fffdf8)}
.franchise-responsibilities h3{font-size:25px;line-height:1.45;margin-bottom:12px}
.franchise-responsibilities p{font-size:16px;line-height:1.8;color:var(--muted,#595b56)}
.franchise-responsibilities ul{margin:24px 0 0;padding:0;list-style:none}
.franchise-responsibilities li{position:relative;padding:15px 22px 15px 0;border-top:1px solid var(--line,#d5d6ce);font-size:15px;line-height:1.85}
.franchise-responsibilities li::before{content:"";position:absolute;inset-inline-start:0;top:27px;width:6px;height:6px;background:var(--sage,#8E9B88)}
html[dir=ltr] .franchise-responsibilities li{padding:15px 0 15px 22px}
.franchise-journey{padding-block:var(--section-space,88px);border-top:var(--border-width,1px) solid var(--line,#d5d6ce)}
.franchise-journey-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;margin:0;padding:0}
.franchise-journey-grid li{padding-top:20px;border-top:2px solid var(--sage,#8E9B88)}
.franchise-journey-number{display:block;font-size:14px;font-weight:500;margin-bottom:22px;font-variant-numeric:tabular-nums}
.franchise-journey-grid h3{font-size:22px;line-height:1.5;margin-bottom:12px;font-weight:600}
.franchise-journey-grid p{font-size:15px;line-height:1.9;color:var(--muted,#595b56)}
.franchise-faq{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:8%;padding-block:var(--section-space,88px);border-top:var(--border-width,1px) solid var(--line,#d5d6ce)}
.franchise-faq .eyebrow{margin-bottom:12px}
.franchise-faq-list{border-top:var(--border-width,1px) solid var(--ink)}
.franchise-faq details{border-bottom:var(--border-width,1px) solid var(--line,#d5d6ce);padding-block:23px}
.franchise-faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:28px;font-size:19px;font-weight:600;line-height:1.6}
.franchise-faq summary::-webkit-details-marker{display:none}
.franchise-faq summary::after{content:"+";font:400 24px Arial,sans-serif;flex-shrink:0;width:24px;text-align:center}
.franchise-faq details[open] summary::after{content:"−"}
.franchise-faq summary:focus-visible{outline:2px solid var(--ink);outline-offset:7px;border-radius:3px}
.franchise-faq details>p{padding-inline-end:40px;margin-top:16px;color:var(--muted,#595b56);font-size:16px;line-height:1.95}
.franchise-contact{margin-bottom:var(--section-space,88px);padding:50px 30px 55px;text-align:center;background:var(--paper,#fffdf8);border:var(--border-width,1px) solid var(--ink);border-radius:var(--radius,12px)}
.franchise-contact>p{max-width:620px;margin:18px auto 28px;color:var(--muted,#595b56);font-size:17px;line-height:1.85}
.franchise-page .footer{padding-bottom:35px}
.franchise-page .primary:hover{background:color-mix(in srgb,var(--ink) 83%,var(--sage,#8E9B88))}
html[lang=en] .franchise-hero h1{line-height:1.14;font-size:clamp(44px,4.7vw,68px)}
@media(max-width:1000px){.franchise-hero{gap:5%;padding-top:38px}.franchise-hero .button{font-size:14px;padding-inline:20px;gap:18px}.franchise-intro{font-size:16px}.franchise-photo{padding:15px 15px 0}.franchise-concept,.franchise-partner{grid-template-columns:60px minmax(0,1fr);gap:20px}.franchise-section-copy{gap:6%}.franchise-model{padding:34px;grid-template-columns:180px minmax(0,1fr)}.franchise-model-mark{padding:16px}.franchise-store-sign{padding:20px 14px}.franchise-support-grid{gap:14px}.franchise-support-grid article{padding:23px}.franchise-support-grid h3{font-size:21px}.franchise-responsibilities{gap:18px}.franchise-responsibilities article{padding:25px}.franchise-journey-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.franchise-faq{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:6%}}
@media(max-width:700px){.franchise-hero{grid-template-columns:minmax(0,1fr);gap:30px;padding-block:38px 52px}.franchise-hero-copy{padding:0}.franchise-page .franchise-hero h1{font-size:44px;line-height:1.3;margin-bottom:20px}.franchise-hero .eyebrow{margin-bottom:18px;font-size:13px}.franchise-intro{font-size:16px;line-height:1.9}.franchise-hero .button{margin-top:24px}.franchise-photo{width:100%;max-width:480px;margin-inline:auto;padding:14px 14px 0}.franchise-photo-window{aspect-ratio:1.1}.franchise-photo figcaption{font-size:11px;padding:14px 2px;gap:14px;min-height:52px}.franchise-concept,.franchise-partner{grid-template-columns:minmax(0,1fr);gap:22px;padding-block:48px}.franchise-section-number{width:44px;height:44px;font-size:12px}.franchise-section-copy{grid-template-columns:minmax(0,1fr);gap:18px}.franchise-page h2{font-size:30px;line-height:1.4}.franchise-section-copy>p,.franchise-model>div>p{font-size:16px;line-height:1.9}.franchise-model{grid-template-columns:minmax(0,1fr);gap:28px;padding:28px 24px}.franchise-model-mark{width:min(100%,240px);padding:22px;gap:13px;margin-inline:auto}.franchise-store-sign{padding:22px 20px;min-height:82px}.franchise-store-sign img{width:112px}.franchise-store-window{min-height:84px}.franchise-model h2{margin-bottom:15px}.franchise-support{padding-block:52px}.franchise-section-heading{margin-bottom:27px}.franchise-section-heading>p:last-child{font-size:15px}.franchise-support-grid{grid-template-columns:minmax(0,1fr);gap:14px}.franchise-support-grid article{min-height:0;padding:25px}.franchise-card-number{margin-bottom:17px}.franchise-support-grid h3{font-size:23px}.franchise-support-grid p{font-size:15px}.franchise-partner{padding-bottom:25px}.franchise-responsibilities{grid-template-columns:minmax(0,1fr);padding-bottom:48px}.franchise-responsibilities article{padding:25px 22px}.franchise-responsibilities h3{font-size:23px}.franchise-responsibilities li{font-size:15px}.franchise-journey{padding-block:48px}.franchise-journey-grid{grid-template-columns:minmax(0,1fr);gap:27px}.franchise-journey-grid li{padding-top:18px}.franchise-journey-number{margin-bottom:14px}.franchise-journey-grid h3{font-size:23px;margin-bottom:8px}.franchise-faq{grid-template-columns:minmax(0,1fr);gap:28px;padding-block:48px}.franchise-faq summary{font-size:17px;gap:18px}.franchise-faq details>p{font-size:15px;padding-inline-end:0}.franchise-contact{margin-bottom:50px;padding:35px 21px}.franchise-contact>p{font-size:16px;margin-top:16px}.franchise-contact .button{width:100%;font-size:14px;padding-inline:15px;gap:15px}.franchise-page .footer{padding-bottom:28px}.franchise-page .footer>div{align-items:center}html[lang=en] .franchise-hero h1{font-size:43px;line-height:1.15}}