:root{--ufan-ink:#251f23;--ufan-muted:#665a60;--ufan-pink:#e78db2;--ufan-deep:#9b4469;--ufan-paper:#fffaf8;--ufan-sans:'Noto Sans JP',sans-serif;}
.page { padding-top:0!important; }
.page .content-bg { padding:0 14px 30px; background:var(--ufan-paper); }
.page .content-bg::before { display:none; }
.page .content-bg>section { margin:0 0 28px; }
.page [id] { scroll-margin-top:80px; }
.ufan-section { position:relative; padding:42px 22px; overflow:hidden; border-radius:30px; background:var(--ufan-paper); }
.section-title { margin:0 0 27px; }
.section-english { display:block; margin-bottom:14px; color:var(--ufan-deep); font:600 30px/1.2 var(--ufan-sans); letter-spacing:-.035em; }
.section-title h2 { margin:0; color:var(--ufan-ink); font-size:27px; font-weight:500; line-height:1.65; letter-spacing:-.035em; }
.ufan-section>p { margin:0; color:var(--ufan-muted); font-size:13px; line-height:2; }
.section-eyebrow { display:block; margin-bottom:12px; color:var(--ufan-muted); font-size:11px; line-height:1.9; }
.section-cta { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:56px; padding:15px 22px; border:1px solid rgba(255,255,255,.4); border-radius:999px; background:linear-gradient(110deg,#c9789d,#b681b6); box-shadow:0 7px 18px #a85b8020,inset 0 1px #ffffff35; color:#fff; font-size:13px; font-weight:500; line-height:1.8; }
.section-cta svg { flex-shrink:0; }
a:focus-visible,button:focus-visible { outline:3px solid var(--ufan-deep); outline-offset:4px; }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.floating-header{height:58px!important;background:rgba(255,252,253,.9)!important;border-bottom:1px solid rgba(231,141,178,.18)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important}.floating-header>button{height:58px!important;color:#574a50!important;background:rgba(244,218,230,.62)!important}.menu-panel{background:rgba(255,250,252,.985)!important}.menu-panel nav{margin-top:54px}.menu-panel nav a{font-family:'Noto Sans JP',sans-serif!important;font-size:16px!important;letter-spacing:0!important}
.fv-new{min-height:880px!important;background:#fffaf8!important}.fv-new .fv-single-visual{height:555px!important}.fv-new .fv-copy{pointer-events:none}.fv-new .fv-details{top:548px!important;left:0!important;right:0!important;padding:0!important;pointer-events:auto}.fv-offer{padding:18px 22px 24px;background:#fffaf8;text-align:center}.fv-offer>b{display:block;color:var(--ufan-ink);font-size:17px}.fv-offer>b strong{display:inline-block;margin:0 3px;color:var(--ufan-deep);font-size:42px;line-height:1}.fv-offer>p{margin:10px 0 14px!important;color:var(--ufan-muted)!important;font-size:12px!important;line-height:1.75!important}
.platform-logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:24px;max-width:280px;height:44px;margin:8px auto 19px}.platform-logo{display:flex;align-items:center;justify-content:center;height:36px;min-width:0;overflow:visible;background:transparent!important}.platform-logo img{position:static!important;display:block!important;width:100%!important;max-width:100%!important;height:32px!important;object-fit:contain!important;transform:none!important;background:transparent!important}.platform-logo.is-myfans img{height:26px!important}
.fv-fees{display:flex;align-items:center;justify-content:center;gap:15px}.fv-fees>b{white-space:nowrap;color:var(--ufan-ink);font-size:13px}.fv-fees strong{display:inline-block;margin:0 2px;color:var(--ufan-deep);font-size:35px;line-height:1}.fv-fees>b+b{padding-left:15px;border-left:1px solid #e7cfd9}.logo-word{font-kerning:normal!important;letter-spacing:-.075em!important;font-feature-settings:'kern' 1!important}

.fv-new .fv-refresh-cta{position:static!important;width:100%!important;height:58px!important;margin:0!important;border-radius:999px!important;background:linear-gradient(90deg,#d96596,#e88bb2)!important;color:#fff!important;box-shadow:none!important}

/* Recognizable worries, followed by the offer and a clearly labelled goal. */
.page .content-bg>.growth-section { border-radius:0; padding:35px 8px 8px; background:transparent; }
.growth-section .section-title { padding-left:8px; }
.concern-list { list-style:none; display:grid; gap:12px; padding:0; margin:0 0 30px; }
.concern-list li { position:relative; display:flex; gap:12px; align-items:flex-start; padding:21px 15px; border:1px solid #fff9; border-radius:20px 20px 20px 5px; background:#fffafbe8; box-shadow:0 5px 17px #8f537a06; }
.concern-list li:nth-child(2) { margin-left:12px; border-radius:20px 20px 5px 20px; }
.concern-list li>span { flex-shrink:0; color:#bf8aa5; font:600 22px/1.2 var(--ufan-sans); }
.concern-list h3 { margin:0 0 7px; color:var(--ufan-ink); font-size:14px; font-weight:500; line-height:1.8; letter-spacing:-.035em; }
.concern-list p { margin:0; color:var(--ufan-muted); font-size:11px; line-height:1.9; }
.growth-answer { position:relative; padding:30px 22px; border-radius:27px; background:#fffafb; text-align:center; }
.growth-answer::before { content:'♡'; display:block; color:#d49ab7; font:27px/1 var(--ufan-sans); margin-bottom:14px; }
.growth-answer>span { color:var(--ufan-deep); font-size:11px; }
.growth-answer h3 { margin:13px 0 17px; font-size:24px; font-weight:500; line-height:1.7; letter-spacing:-.04em; }
.growth-answer p { margin:0; color:var(--ufan-muted); font-size:12px; line-height:2; }
.growth-answer>a { display:inline-flex; align-items:center; gap:8px; margin-top:20px; border-bottom:1px solid #d7aec2; color:var(--ufan-deep); font-size:11px; }
.growth-goal { padding:28px 12px 10px; margin-top:12px; }
.growth-goal>span { color:var(--ufan-muted); font-size:11px; }
.growth-goal h3 { margin:12px 0 24px; font-size:23px; font-weight:500; line-height:1.9; letter-spacing:-.04em; }
.growth-goal h3>strong { color:var(--ufan-deep); font:700 58px/1.15 var(--ufan-sans); letter-spacing:-.065em; white-space:nowrap; }
.growth-goal h3 small { font:500 22px 'Noto Sans JP',sans-serif; letter-spacing:0; }
.goal-bars { position:relative; display:flex; align-items:flex-end; justify-content:center; gap:23px; height:210px; padding:0 17px; border-bottom:1px solid #c99cb4; }
.goal-bars>div { flex:1; max-width:65px; display:flex; flex-direction:column; align-items:center; }
.goal-bars i { display:block; width:100%; height:43px; border:1px solid #fff9; border-radius:13px 13px 0 0; background:linear-gradient(#f7eaf3,#dec0d4); }
.goal-bars>div:nth-child(2) i { height:86px; background:linear-gradient(#e9bcd4,#ca8db1); }
.goal-bars>div:nth-child(3) i { height:129px; background:linear-gradient(#d497bb,#ac6e97); }
.goal-bars b { padding:9px 0; font-size:10px; font-weight:400; color:#84516c; }
.growth-goal>p { margin:17px 0 9px; color:#805069; font-size:10px; line-height:1.9; }
.growth-goal>small { display:block; color:#78606f; font-size:9px; line-height:1.9; }

.focus-section .section-english { font-size:27px; }
.focus-section>p { margin-bottom:23px; font-size:12px; }
.focus-section figure { margin:0 -6px; overflow:hidden; border-radius:22px; background:#f7eef2; }
.focus-section figure img { display:block; width:100%!important; height:315px!important; max-width:none!important; object-fit:cover!important; object-position:50% 38%!important; }
.work-sharing { margin-top:25px; }
.creator-role { padding:19px 10px; border:1px solid #ecdce6; border-radius:20px; background:#fcf7fa; text-align:center; }
.creator-role>span,.team-role>span { display:block; color:var(--ufan-deep); font-size:11px; }
.creator-role h3 { margin:6px 0; font-size:24px; font-weight:500; }
.creator-role p { margin:0; font-size:11px; color:var(--ufan-muted); }
.handoff-arrow { display:block; margin:12px auto; width:22px; height:22px; color:#c28ca9; }
.team-role { padding:23px 15px; border:1px solid #ead4e2; border-radius:24px; background:linear-gradient(145deg,#faedf5,#f1eaf6); text-align:center; }
.team-people { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:20px 0; }
.team-people article { min-width:0; }
.team-people svg { width:56px; height:56px; padding:10px; fill:#e8bfd4; stroke:#a76589; stroke-width:2; stroke-linecap:round; background:#fff9; border-radius:50%; }
.team-people h3 { margin:8px 0; color:#6b3c58; font-size:13px; font-weight:500; }
.team-people p { margin:0; color:#75616d; font-size:10px; line-height:1.9; }
.work-tags { list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; padding:18px 0 0; border-top:1px solid #e4cbdc; text-align:left; }
.work-tags li { display:flex; gap:5px; align-items:center; font-size:11px; }
.work-tags svg { flex-shrink:0; color:#a56588; }


/* A light two-by-two feature grid, with images and oversized editorial numbers. */
.support-section { padding-inline:20px; }
.support-items { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 18px; }
.support-items article { position:relative; min-width:0; display:flex; flex-direction:column; padding-top:2px; }
.support-items article>span { display:block; margin-bottom:7px; color:#d7abc3; font:600 35px/1 var(--ufan-sans); }
.support-items h3 { margin:0 0 12px; color:#624254; font-size:16px; line-height:1.8; font-weight:500; letter-spacing:-.045em; }
.support-items p { margin:0 0 17px; color:var(--ufan-muted); font-size:11px; line-height:1.95; }
.support-items p br { display:none; }
.support-items img { display:block; width:100%; height:auto; aspect-ratio:1; max-width:170px; margin:auto auto 0; object-fit:contain; border-radius:20px; }
.support-cta { margin-top:29px; }

.price-new { padding-inline:18px; }
.price-new .price-intro { font-size:12px; line-height:2; }
.fee-model { display:grid; grid-template-columns:1fr 1fr; margin:26px 0; padding:22px 12px 17px; border:1px solid #ecd8e4; border-radius:23px; background:linear-gradient(135deg,#fff6f9,#f6eff9); text-align:center; }
.fee-model>div+div { border-left:1px solid #e7ccdd; }
.fee-model span { display:block; color:#705264; font-size:11px; }
.fee-model b { display:block; margin-top:7px; color:var(--ufan-deep); font:600 57px/1.05 var(--ufan-sans); }
.fee-model b small { font:400 15px 'Noto Sans JP',sans-serif; margin-left:3px; }
.fee-model>p { grid-column:1/-1; margin:15px 0 0; color:var(--ufan-deep); font-size:11px; }
.step-list { display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; scrollbar-width:none; padding-right:22px; margin-right:-22px; }
.step-list::-webkit-scrollbar { display:none; }
.step-list article { display:flex; flex-direction:column; flex:0 0 calc(100% - 22px); min-width:0; scroll-snap-align:start; gap:16px; padding:24px 20px; border:1px solid #ecdce4; border-radius:22px; background:#ffffffb8; }
.step-list article>div { display:flex; flex:1; flex-direction:column; }
.step-list .step-output { margin-top:auto; }
.step-list article p { padding-bottom:20px; }
.step-list article>span { color:#cd9eb9; font:600 29px/1.2 var(--ufan-sans); }
.step-list h3 { margin:0 0 11px; color:#674c5c; font-size:17px; font-weight:500; line-height:1.8; }
.step-list p { margin:0; color:var(--ufan-muted); font-size:12px; line-height:2; }
.step-output { margin-top:14px; padding:13px 14px; border-radius:14px; background:#f9f0f6; }
.step-output b { display:block; margin-bottom:4px; color:#a56b8a; font-size:10px; font-weight:500; }
.step-output span { display:block; font-size:10px; line-height:1.9; color:#73566a; }
.steps-section .steps-reassurance { padding-top:17px; border-top:1px solid #ead5e0; color:#98728a; font-size:10px; }
.faq-block { margin-bottom:28px; padding:40px 22px; border-radius:30px; background:#fffafb; }
.faq-block .faq-list article { border:1px solid #ecdae7!important; border-radius:16px!important; background:#fcf8fc!important; }
.faq-block .faq-list button { min-height:58px; padding:15px 13px; border:0; background:transparent; font-size:11px; font-weight:400; color:#6c4e62; }
.faq-block .faq-list button>span { min-width:0; }
.faq-block .faq-list button b { flex:0 0 21px; white-space:nowrap; color:#ad6b95; font-family:var(--ufan-sans); font-size:16px; }
.faq-block .faq-list p { color:var(--ufan-muted); font-size:11px; line-height:2; }
.contact-section { background:linear-gradient(145deg,#fff8fb,#f7edf7); }
.contact-section>p { font-size:12px; }
.consultation-portrait { margin:24px -4px 23px; border-radius:22px 22px 65px 22px; overflow:hidden; }
.consultation-portrait img { display:block; width:100%; height:200px; object-fit:cover; object-position:70% 45%; }
.consultation-points { list-style:none; display:grid; gap:12px; padding:0; margin:24px 0; }
.consultation-points li { display:flex; align-items:center; gap:9px; color:#795e70; font-size:11px; }
.consultation-points svg { flex-shrink:0; color:#b77b9c; }
.diagnosis-actions { margin-top:25px; }
.contact-section .diagnosis-actions a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:56px; padding:15px 21px; border-radius:999px; color:#fff; background:linear-gradient(110deg,#c9789d,#b681b6); font-size:13px; font-weight:500; }
.contact-note { display:block; margin-top:13px; color:#8e7486; font-size:9px; text-align:center; }
.site-footer { display:flex!important; height:auto!important; min-height:230px; align-items:center!important; justify-content:center!important; gap:23px; padding:35px 24px!important; background:linear-gradient(180deg,#fffdfc,#fff7fa)!important; border:0; color:#705367!important; }
.site-footer nav { display:grid; gap:10px; text-align:center; }
.site-footer nav a { color:#705367; font-size:11px; }
.site-footer>small { margin:0!important; color:#997b8d; font-size:9px; }

/* Keep the original desktop background and header outside the revised story. */
.consult-preview { width:100%; max-width:260px; padding:25px 0; border-block:1px solid rgba(155,68,105,.2); }
.consult-preview>span { display:block; margin-bottom:18px; color:var(--ufan-deep); font-size:12px; font-weight:700; }
.consult-preview strong { font-size:21px; line-height:1.7; letter-spacing:-.03em; }
.consult-preview p { margin:16px 0; color:var(--ufan-muted); font-size:12px; line-height:1.9; }
.consult-preview small { color:var(--ufan-deep); font-size:10px; }
@media(max-width:374px) {
  .fv-new { min-height:875px!important; }
  .fv-new .fv-details { top:540px!important; }
  .fv-offer { padding-inline:18px; }
  .ufan-section { padding-inline:19px; }
  .section-title h2 { font-size:25px; }
  .section-english { font-size:28px; }
  .growth-goal h3 { font-size:21px; }
  .growth-goal h3>strong { font-size:59px; }
  .concern-list h3 { font-size:13px; }
  .support-items { gap:23px 14px; }
  .support-items h3 { font-size:15px; }
  .support-items p { font-size:10px; }
  .price-new { padding-inline:14px; }
  .plan-comparison tbody th { font-size:9px; }
  .compare-fee strong { font-size:33px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Japanese headings keep the soft rose accent, with readable native typography. */
.section-title-accent h2,.section-english { color:var(--ufan-deep); font-family:'Noto Sans JP',sans-serif; font-style:normal; font-size:24px; font-weight:500; line-height:1.75; letter-spacing:-.04em; }
.focus-section .section-english { font-size:14px; letter-spacing:0; margin-bottom:15px; }
.price-new .section-english { font-size:24px; }
.price-new .section-title h2 { font-size:23px; }
.goal-chart { position:relative; padding-top:5px; }
.growth-arrow { position:absolute; inset:0 0 auto; width:100%; height:160px; overflow:visible; }
.growth-arrow-line { fill:none; stroke:#ba7398; stroke-width:4; stroke-linecap:round; }
.growth-arrow marker path { fill:#ba7398; stroke:none; }
.step-controls { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:22px; }
.step-controls>button { display:grid; place-items:center; width:38px; height:38px; padding:0; background:#fff; border:1px solid #e6c9d8; border-radius:50%; color:var(--ufan-deep); cursor:pointer; }
.step-controls>button:disabled { opacity:.3; cursor:default; }
.previous-arrow { transform:rotate(180deg); }
.step-dots { display:flex; align-items:center; gap:3px; }
.step-dots button { position:relative; width:22px; height:30px; padding:0; background:transparent; border:0; cursor:pointer; }
.step-dots button::after { content:''; position:absolute; left:8px; top:12px; width:6px; height:6px; border-radius:50%; background:#e7d3dd; }
.step-dots button[aria-current]::after { background:var(--ufan-deep); }
.step-count { font-size:11px; color:#8f6077; white-space:nowrap; }
.contact-section { background:transparent; padding-block:45px; }
.contact-section .section-title { text-align:center; }
.support-items img { max-width:150px; border-radius:16px; }
/* Slow drifting rose pools share a white canvas across all screen sizes. */
body:not(.standalone-page) { background:#fff!important; }
.ambient-background { position:fixed; inset:0; overflow:hidden; pointer-events:none; z-index:0; background:#fff; }
.ambient-background::before,.ambient-background::after { content:''; position:absolute; width:85vmax; height:85vmax; border-radius:50%; filter:blur(65px); background:radial-gradient(circle,#f8dce8a6 0%,#fcecf378 35%,transparent 68%); will-change:transform; animation:rose-pool 36s ease-in-out infinite; }
.ambient-background::before { left:-30vmax; top:-35vmax; }
.ambient-background::after { right:-35vmax; bottom:-38vmax; animation-duration:43s; animation-direction:reverse; }
.page { position:relative; z-index:1; background:#ffffffb3!important; }
.page .content-bg { background:transparent!important; }
.ufan-section,.faq-block { background:#ffffff96; }
.fv-new,.fv-offer { background:#fff!important; }
.site-footer { background:#ffffffa6!important; }
@keyframes rose-pool { 0%,100% { transform:translate3d(0,0,0) scale(1); } 50% { transform:translate3d(20vmax,14vmax,0) scale(1.15); } }
@media (max-width:374px) { .fv-fees { gap:10px; } .fv-fees>b { font-size:12px; } .fv-fees>b+b { padding-left:10px; } .fv-fees strong { font-size:32px; } }
@media (prefers-reduced-motion:reduce) { .ambient-background::before,.ambient-background::after { animation:none; } }

/* Clear contact invitation and a useful brand footer. */
.contact-section { padding:38px 22px 42px; text-align:center; border:1px solid #efdde5; background:linear-gradient(145deg,#fff,#fff4f8); }
.contact-section .section-title { margin-bottom:23px; }
.contact-section .section-title h2 { font-size:15px; letter-spacing:.08em; }
.contact-lead { margin:0 0 20px; font-size:28px; font-weight:600; line-height:1.7; letter-spacing:-.05em; color:var(--ufan-ink); }
.contact-section>p { margin:0 0 27px; font-size:12px; line-height:2; }
.site-footer { display:flex!important; flex-direction:column; align-items:stretch!important; gap:0; min-height:0; padding:40px 28px 24px!important; background:#fff8fb!important; border-top:1px solid #efdae3; text-align:left; }
.footer-brand .logo { justify-content:flex-start; }
.footer-brand>p { margin:18px 0 9px; font-size:19px; font-weight:600; letter-spacing:-.03em; color:#674251; }
.footer-brand>span { display:block; color:#8b707b; font-size:10px; line-height:1.9; }
.site-footer nav { display:grid; grid-template-columns:1fr 1fr; gap:0 22px; margin:28px 0; padding:15px 0; border-block:1px solid #edd9e2; text-align:left; }
.site-footer nav a { display:flex; align-items:center; justify-content:space-between; gap:5px; min-height:42px; color:#715662; font-size:10px; }
.site-footer nav svg { flex-shrink:0; opacity:.55; }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.footer-bottom small,.footer-bottom a { color:#977c88; font-size:9px; }
@media (max-width:374px) { .growth-goal h3>strong { font-size:51px; } .contact-lead { font-size:26px; } }

.growth-goal h3>strong { display:inline-flex; align-items:baseline; gap:12px; }
.growth-goal h3>strong>span { white-space:nowrap; }
.price-new>.section-cta { margin-top:24px; }

/* Rates are compared once; shared support is listed once. */
.fee-model>p { margin-top:23px; font-size:16px; font-weight:600; line-height:1.8; text-decoration:underline; text-decoration-color:#d9a6bf; text-decoration-thickness:2px; text-underline-offset:6px; }
.pricing-plans>h3 { margin:0 0 17px; color:#795264; text-align:center; font-size:14px; font-weight:500; }
.pricing-plan-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.pricing-plan-grid article { min-width:0; padding:24px 10px; border:1px solid #e9cad9; border-radius:20px; background:#fff5f9; text-align:center; }
.pricing-plan-grid article+article { background:#faf5fc; border-color:#e5d5e9; }
.pricing-plan-grid h4 { margin:0 0 13px; color:var(--ufan-deep); font-size:15px; font-weight:600; }
.pricing-plan-grid p { margin:0 0 22px; color:#775565; font-size:12px; line-height:1.9; }
.plan-fee-label { display:block; margin-bottom:8px; color:#886a79; font-size:10px; }
.pricing-plan-grid strong { display:block; color:var(--ufan-deep); font:600 39px/1.2 var(--ufan-sans); white-space:nowrap; }
.pricing-plan-grid strong small { font-size:13px; font-weight:500; }
.shared-services { margin-top:22px; padding:25px 18px 0; border-top:1px solid #ecd9e3; }
.shared-services h3 { margin:0 0 20px; color:#765365; font-size:16px; font-weight:500; line-height:1.9; }
.shared-services ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px 12px; list-style:none; margin:0; padding:0; }
.shared-services li { position:relative; padding-left:13px; font-size:12px; line-height:1.8; color:#66515d; }
.shared-services li::before { content:''; position:absolute; left:0; top:9px; width:4px; height:4px; border-radius:50%; background:#c286a5; }
.global-service { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin:24px 0 0; padding-top:18px; border-top:1px solid #ecd9e3; font-size:11px; line-height:1.8; color:#765365; }
.global-service span { padding:4px 8px; border-radius:6px; background:#f4e6ef; font-size:10px; }
.support-items img { background:transparent; border-radius:0; }
.contact-lead { font-size:26px; }
@media (max-width:374px) { .shared-services { padding-inline:8px; } .shared-services li { font-size:11px; } .contact-lead { font-size:24px; } }

/* Domestic plans retain the existing rose and lavender cards. */
.price-new .domestic-platforms { margin:0 0 22px; color:var(--ufan-muted); font-size:11px; line-height:1.9; text-align:center; }
.price-new .pricing-plan-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
.price-new .pricing-plan-grid article { padding:26px 22px; }
.price-new .pricing-plan-grid article:nth-child(3) { background:linear-gradient(145deg,#fff5f9,#f6eff9); }
.price-new .pricing-plan-grid h4 { font-size:17px; margin-bottom:9px; }
.price-new .pricing-plan-grid p { margin-bottom:18px; }
.price-new .pricing-plan-grid strong { font-size:48px; }
.price-new .pricing-plan-grid strong small { font-size:18px; margin-left:3px; }
.price-new .plan-services { margin-top:22px; padding-top:18px; border-top:1px solid #e9d2de; text-align:left; }
.price-new .plan-services>span { display:block; margin-bottom:12px; color:var(--ufan-deep); font-size:11px; font-weight:600; line-height:1.8; }
.price-new .plan-services ul { display:grid; gap:9px; margin:0; padding:0; list-style:none; }
.price-new .plan-services li { position:relative; padding-left:15px; color:var(--ufan-muted); font-size:12px; line-height:1.85; overflow-wrap:anywhere; }
.price-new .plan-services li::before { content:''; position:absolute; left:0; top:9px; width:5px; height:5px; border-radius:50%; background:#c286a5; }
.price-new .pricing-plan-grid .plan-detail { margin:18px 0 0; color:#886a79; font-size:10px; line-height:1.9; text-align:left; }
.price-new .pricing-scope-note { margin:18px 0 0; color:#886a79; font-size:10px; line-height:1.9; }

/* Compact service comparison fits the existing narrow content lane. */
.price-new .pricing-table-wrap { overflow:hidden; border:1px solid #e9cad9; border-radius:16px; background:#fff; }
.price-new .pricing-comparison { width:100%; table-layout:fixed; border-collapse:collapse; color:var(--ufan-muted); }
.price-new .pricing-comparison .service-column { width:46%; }
.price-new .pricing-comparison th,.price-new .pricing-comparison td { padding:13px 5px; border-bottom:1px solid #efdee7; vertical-align:middle; }
.price-new .pricing-comparison thead th { background:#faf1f6; color:var(--ufan-deep); text-align:center; font-weight:500; }
.price-new .pricing-comparison thead th:first-child { padding-left:12px; text-align:left; font-size:11px; }
.price-new .pricing-comparison thead span { display:flex; align-items:center; justify-content:center; min-height:34px; font-size:9px; line-height:1.6; }
.price-new .pricing-comparison thead strong { display:block; margin-top:6px; font:600 23px/1.2 var(--ufan-sans); white-space:nowrap; }
.price-new .pricing-comparison thead small { font-size:10px; }
.price-new .pricing-comparison tbody th { padding-left:12px; font-size:11px; font-weight:400; line-height:1.8; text-align:left; overflow-wrap:anywhere; }
.price-new .pricing-comparison td { text-align:center; }
.price-new .pricing-comparison th+th,.price-new .pricing-comparison td { border-left:1px solid #efdee7; }
.price-new .pricing-comparison tbody tr:nth-child(even) { background:#fffafd; }
.price-new .pricing-comparison tr:last-child th,.price-new .pricing-comparison tr:last-child td { border-bottom:0; }
.price-new .service-included { color:var(--ufan-deep); font:500 19px/1.4 var(--ufan-sans); }
.price-new .service-excluded { color:#b6a3ad; font-size:15px; }
.price-new .pricing-table-legend { margin:12px 0 0; color:#886a79; font-size:10px; line-height:1.8; text-align:center; }
.support-section>.support-plan-note { margin:20px 22px 0; color:var(--ufan-muted); font-size:11px; line-height:1.9; text-align:center; }
