.zz-preview{position:relative;isolation:isolate;overflow:hidden;background:#fff;color:#344e56}.zp-inner{position:relative;z-index:1;width:min(1180px,calc(100% - 96px));padding:48px 0 30px}.zp-heading{text-align:center;margin-bottom:36px}.zz-preview .zp-heading h1{font-size:clamp(25px,3vw,38px);line-height:1.6;letter-spacing:.035em}.zp-heading h1:after{content:"";display:block;width:52px;height:2px;background:#ce826f;margin:17px auto}.zp-heading p{font:16px/1.9 'Yu Mincho',serif;letter-spacing:.035em}.zp-mobile-break{display:none}.zp-leaf{position:absolute;width:110px;height:160px;object-fit:contain;pointer-events:none;z-index:0;opacity:.7}.zp-leaf-top{top:15px;left:12px}.zp-leaf-bottom{right:10px;bottom:8px;transform:rotate(10deg)}.zp-steps{display:grid;grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr);gap:14px;align-items:stretch}.zp-step{border:1px solid #dce5e0;border-radius:10px;overflow:hidden;background:rgba(255,255,255,.96);min-width:0}.zp-step-heading{display:flex;align-items:center;justify-content:center;gap:24px;background:#e8eeeb;padding:16px 12px;min-height:78px}.zp-step-heading>span{white-space:nowrap;font:14px/1.5 Georgia,serif;letter-spacing:.06em;border-bottom:1px solid #819692;padding-bottom:2px}.zp-step-heading b{font-weight:400;font-size:21px}.zz-preview .zp-step-heading h2{font-size:clamp(20px,2vw,28px);line-height:1.4;letter-spacing:.025em}.zp-step-body{padding:20px 22px}.zp-first{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:328px}.zp-phone-row{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:15px}.zp-phone{width:150px;height:175px;flex-shrink:0}.zp-handwritten{font:22px/1.6 Yomogi,'Yu Mincho',serif;color:#c7806b;transform:rotate(-5deg)}.zp-step-arrow{align-self:center;text-align:center;font:38px/1 serif}.zz-preview .zp-button{display:flex;align-items:center;justify-content:center;position:relative;width:min(410px,100%);min-height:58px;padding:14px 55px;border:0;border-radius:40px;background:#d4836d;color:#fff;font:18px/1.6 'Yu Mincho',serif;letter-spacing:.07em;text-decoration:none;transition:background-color .2s ease}.zz-preview .zp-button:hover{background:#bd6e58;color:#fff}.zp-button span{position:absolute;right:24px;font-size:27px;transition:transform .2s ease}.zp-button:hover span,.zp-button:focus-visible span{transform:translateX(5px)}.zp-button:disabled{cursor:not-allowed}.zp-button:disabled:hover{background:#d4836d}.zp-button:disabled:hover span{transform:none}.zp-button:focus-visible{outline:2px solid #344e56;outline-offset:4px}.zz-preview .zp-button-note{font-size:10px;line-height:1.6;margin-top:9px;color:#71867e;text-align:center}.zp-second{text-align:center}.zp-second>p{font:14px/1.9 'Yu Mincho',serif}.zp-designs{margin-top:10px!important}.zp-designs img{display:block;width:100%;height:238px;object-fit:contain}.zp-designs figcaption{font:11px/1.6 'Yu Mincho',serif;letter-spacing:.1em;margin-top:4px}.zp-assurance{display:grid;grid-template-columns:35px 1fr 1fr;align-items:center;gap:24px;background:#edf3f0;border-radius:8px;padding:20px 24px;margin-top:26px}.zp-assurance svg{width:32px;height:32px;color:#c7806b}.zp-assurance p{font:12px/1.9 'Yu Mincho',serif}.zp-assurance p:last-child{border-left:1px solid #a5b6ae;padding-left:25px}.zp-back{text-align:center;padding-top:14px}.zp-back .zz-page-link{font:12px/1.7 'Yu Mincho',serif;gap:14px;border-color:#8a9f97;min-height:36px}.zp-back .zz-page-link span{font-size:22px}
@media(max-width:1000px){.zp-step-heading{gap:12px}.zz-preview .zp-step-heading h2{font-size:20px}.zp-step-body{padding:18px 14px}.zp-phone-row{gap:10px}.zp-handwritten{font-size:19px}.zp-phone{width:125px}.zp-second>p{font-size:12px}.zp-designs img{height:220px}.zp-assurance{gap:16px}}
@media(max-width:767px){.zp-inner{width:calc(100% - 40px);padding:34px 0 28px}.zp-heading{margin-bottom:25px}.zz-preview .zp-heading h1{font-size:24px;line-height:1.7;max-width:310px;margin:auto}.zp-heading h1:after{margin:13px auto}.zp-heading p{font-size:12px;line-height:1.9}.zp-mobile-break{display:block}.zp-leaf{width:65px;height:100px;opacity:.35}.zp-leaf-top{left:-12px;top:6px}.zp-leaf-bottom{right:-10px;bottom:8px}.zp-steps{grid-template-columns:1fr;gap:13px}.zp-step-heading{min-height:64px;padding:14px 10px;gap:20px}.zz-preview .zp-step-heading h2{font-size:21px}.zp-step-heading>span{font-size:11px}.zp-step-heading b{font-size:18px}.zp-first{min-height:0;padding:17px 24px 21px}.zp-phone-row{margin-bottom:12px;gap:20px}.zp-phone{width:120px;height:146px}.zp-handwritten{font-size:18px}.zz-preview .zp-button{font-size:16px;min-height:52px}.zp-step-arrow{font-size:29px;line-height:1;transform:rotate(90deg);height:25px}.zp-second{padding:17px 12px 18px}.zp-second>p{font-size:12px}.zp-designs img{height:auto;max-height:245px;aspect-ratio:1.5;object-fit:contain}.zp-assurance{grid-template-columns:25px 1fr;padding:18px 16px;gap:10px 14px;margin-top:22px}.zp-assurance svg{width:25px;height:25px;grid-row:span 2}.zp-assurance p{font-size:11px}.zp-assurance p:last-child{border:0;padding-left:0}.zp-back .zz-page-link{font-size:11px;gap:10px}.zp-back{padding-top:17px}}
@media(max-width:350px){.zz-preview .zp-step-heading h2{font-size:18px}.zp-step-heading{gap:12px}.zp-phone-row{gap:10px}.zp-handwritten{font-size:16px}.zp-first{padding-left:18px;padding-right:18px}.zz-preview .zp-heading h1{font-size:22px}}
@media(prefers-reduced-motion:reduce){.zp-button span{transition:none}}

@media(max-width:767px){.zp-heading h1 span{display:block;white-space:nowrap}.zp-designs img{aspect-ratio:auto}.zp-designs{margin-top:6px!important}}

.zz-preview .zp-microcopy{font:14px/1.7 'Yu Gothic',Meiryo,sans-serif;letter-spacing:.05em;color:#697e75;text-align:center;margin:0 0 10px}.zp-microcopy span{display:inline-block;margin:0 8px;color:#c7806b}.zp-mobile-cta{display:none}@media(max-width:767px){.zp-mobile-cta{display:flex;flex-direction:column;align-items:center;padding:22px 14px 3px}.zp-mobile-cta .zp-button{width:100%}.zp-first .zp-phone-row{margin-bottom:10px}}

/* Approved hand-drawn artwork and clearer application controls. */
.zp-phone-row{width:100%;height:190px;overflow:hidden;margin-bottom:12px}
.zp-friend-illustration{display:block;width:430px;max-width:none;height:287px;object-fit:contain;flex-shrink:0}
.zz-preview .zp-button{min-height:64px;padding:15px 24px;background:#d97561;font-size:20px;letter-spacing:.08em;box-shadow:0 5px 12px rgba(174,92,72,.16);transition:background-color .2s ease,box-shadow .2s ease}
.zz-preview .zp-button:hover,.zz-preview .zp-button:focus-visible{background:#c76350;box-shadow:0 7px 16px rgba(174,92,72,.22)}
.zz-preview .zp-button:disabled:hover{background:#d97561;box-shadow:0 5px 12px rgba(174,92,72,.16)}
.zz-preview .zp-button-note{font-size:12px}
.zz-preview .zp-assurance p{font-size:15px;line-height:1.9}
@media(max-width:767px){.zp-phone-row{height:174px}.zp-friend-illustration{height:240px;width:360px}.zz-preview .zp-button{min-height:58px;font-size:18px;padding:14px 18px}.zz-preview .zp-assurance p{font-size:14px;line-height:1.9}.zp-assurance{padding:20px 14px;gap:14px 10px}.zz-preview .zp-button-note{font-size:11px}.zz-preview .zp-microcopy{font-size:13px}}
@media(max-width:350px){.zp-friend-illustration{width:300px;height:200px}.zp-phone-row{height:150px}}
@media(max-width:350px){.zz-preview .zp-assurance p{font-size:13px}.zp-assurance{grid-template-columns:20px 1fr}.zp-assurance svg{width:20px;height:20px}}
/* Keep the label centered while the right chevron gives hover feedback. */
.zz-preview .zp-button{padding-left:48px;padding-right:48px}
.zz-preview .zp-button::after{content:"";position:absolute;right:25px;top:50%;width:8px;height:8px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:translateY(-50%) rotate(45deg);transition:transform .2s ease;pointer-events:none}
.zz-preview .zp-button:hover::after,.zz-preview .zp-button:focus-visible::after{transform:translate(4px,-50%) rotate(45deg)}
.zz-preview .zp-button:disabled::after{transform:translateY(-50%) rotate(45deg)}
@media(max-width:767px){.zz-preview .zp-button::after{right:23px}}
@media(prefers-reduced-motion:reduce){.zz-preview .zp-button::after{transition:none}}
.zz-preview .zp-button{padding-left:48px;padding-right:48px}
