/* Brand source: Companion/src/ui/hub.css. Keep its palette and radius family. */
:root{color-scheme:light;--bg:#f7f7f9;--panel:#fff;--sidebar:#efeff3;--text:#242229;--muted:#696571;--line:#e2dfe6;--accent:#a65470;--on-accent:#fff;--soft:#f3e8ed;--hover:#e8e6ec;--radius-control:8px;--radius-panel:14px;--radius-dialog:16px;--layer-header:5;--layer-scroll:6;--layer-skip:10}
*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{background:var(--bg);color:var(--text);font:16px/1.75 'Segoe UI Variable Text','Segoe UI','Malgun Gothic',sans-serif;word-break:keep-all;overflow-wrap:break-word}:lang(ja){font-family:'Yu Gothic UI','Meiryo',sans-serif}:lang(zh-CN){font-family:'Microsoft YaHei UI',sans-serif}:lang(zh-TW){font-family:'Microsoft JhengHei UI',sans-serif}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance;line-height:1.3;font-weight:600}p{text-wrap:pretty}h1{font-size:clamp(34px,4.15vw,58px);letter-spacing:-.05em;max-width:1060px}h1>span{display:block}h2{font-size:clamp(27px,3vw,42px);letter-spacing:-.04em}h3{font-size:22px;letter-spacing:-.02em}.wrap{width:min(1180px,calc(100% - 96px));margin-inline:auto}.section{padding-block:112px}.section-copy>p:not(.eyebrow){color:var(--muted);margin-top:24px;font-size:17px;line-height:1.9}.section-copy.narrow{max-width:740px}.accent-text{color:var(--accent)}.product-label,.eyebrow{color:var(--accent);font-size:13px;font-weight:600;letter-spacing:.04em;margin-bottom:24px}.small-copy{font-size:13px!important;line-height:1.8!important}.header{position:sticky;top:0;z-index:var(--layer-header);background:var(--bg);border-bottom:1px solid var(--line)}.nav-inner{width:min(1320px,calc(100% - 64px));height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:21px;letter-spacing:-.04em;line-height:1.1;white-space:nowrap}.cat{display:inline-block;width:38px;height:42px;background:var(--accent);mask:url('assets/cat.svg') center/contain no-repeat;-webkit-mask:url('assets/cat.svg') center/contain no-repeat;flex:none}.brand-product{margin-left:9px;font-size:14px;color:var(--muted);font-weight:400;letter-spacing:0}.header nav{display:flex;gap:28px;font-size:13px;color:var(--muted)}.header nav a:hover,.footer a:hover{color:var(--accent)}.preferences{display:flex;gap:5px}.icon-button{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:8px;border:1px solid transparent;background:transparent;padding:8px;flex:none}.icon-button:hover{background:var(--soft);color:var(--accent)}.icon-button img{width:19px;height:19px;opacity:.75}.icon-button span{font-size:25px;line-height:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:46px;padding:11px 20px;border:1px solid var(--line);border-radius:var(--radius-control);font-weight:600;font-size:14px;line-height:1.5;transition:transform 140ms}.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button img{width:17px;height:17px;filter:brightness(0) invert(1)}.hero{padding-top:72px}.hero-copy{max-width:620px;margin-top:25px;color:var(--muted);font-size:17px;line-height:1.85}.hero .button{margin-top:30px}.media-slot{background:var(--sidebar);border-radius:var(--radius-panel);overflow:hidden;min-width:0}.media-slot>*{display:block;width:100%;height:100%;object-fit:cover}.hero-media{aspect-ratio:2.15;margin-top:56px;background:var(--soft)}.dock-section{padding-top:136px}.dock-media{aspect-ratio:16/9;margin-top:48px}.dock-caption{display:flex;align-items:center;gap:36px;margin-top:24px;font-size:14px;color:var(--muted)}.caption-rule{height:1px;flex:1;background:var(--line)}.together-section{background:var(--panel)}.together-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:80px;align-items:center}.together-media{aspect-ratio:4/5}.inline-points{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:28px;font-size:14px;font-weight:600;color:var(--accent)}.app-tabs{display:flex;gap:6px;margin-top:48px;padding:6px;border-radius:12px;background:var(--sidebar);width:fit-content;max-width:100%}.app-tabs button{padding:12px 20px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:14px;line-height:1.5}.app-tabs button[aria-selected=true]{background:var(--panel);color:var(--accent);box-shadow:0 2px 7px #00000008}.app-tabs button:hover{color:var(--accent)}.app-panel{display:grid;grid-template-columns:1.22fr 1fr;gap:64px;align-items:center;margin-top:36px;min-height:415px}.app-media{aspect-ratio:4/3}.app-services{font-size:13px;color:var(--accent);margin-bottom:18px}.app-copy>p:not(.app-services){margin-top:20px;color:var(--muted);font-size:16px;line-height:1.85}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;list-style:none;margin:30px 0 0;padding:0;font-size:13px;color:var(--muted)}.feature-list li{padding-left:16px;position:relative}.feature-list li:before{content:'';position:absolute;top:.75em;left:0;width:6px;height:1px;background:var(--accent)}.personal-section{background:var(--soft)}.personal-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}.personal-media{aspect-ratio:4/3;background:var(--bg)}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px 100px;margin-top:64px}.details-grid h3{font-size:20px}.details-grid p{font-size:15px;color:var(--muted);margin-top:14px;line-height:1.9}.guide{display:grid;grid-template-columns:1fr 1.8fr;gap:70px;border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq details:first-child{padding-top:0}.faq summary{cursor:pointer;list-style:none;position:relative;padding-right:32px;font-size:17px;font-weight:600}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:3px;top:0;color:var(--accent);font-size:21px}.faq details[open] summary:after{content:'−'}.faq p{padding:20px 30px 0 0;font-size:14px;line-height:1.9;color:var(--muted)}.closing{background:var(--soft);padding:80px 0;text-align:center}.closing-cat{width:54px;height:62px;margin-bottom:20px}.closing h2{font-size:clamp(27px,3vw,38px);max-width:800px;margin:auto}.closing .button{margin-top:30px}.footer{display:flex;align-items:center;gap:28px;justify-content:space-between;padding-block:36px;font-size:12px;color:var(--muted)}.footer-brand{font-size:17px;color:var(--text)}.footer-brand .cat{width:28px;height:32px}.skip{position:fixed;top:10px;left:10px;transform:translateY(-150%);z-index:var(--layer-skip);background:var(--panel);padding:8px 16px;border-radius:8px}.skip:focus{transform:none}
/* Reused CompanionScroll selectors; the page uses the product's existing overlay. */
.scroll-region{min-height:0;position:relative;overflow:hidden}.site-scroll{height:100%}.scroll-content{height:100%;overflow:auto;scrollbar-width:none;overscroll-behavior:contain;scroll-behavior:smooth}.scroll-content::-webkit-scrollbar{display:none}.scroll-rail{position:absolute;inset:0 1px 0 auto;width:10px;opacity:0;touch-action:none;transition:opacity 160ms;z-index:var(--layer-scroll)}.scroll-rail:not(.scrollable){pointer-events:none}.scrolling>.scroll-rail,.scroll-near>.scroll-rail,.scroll-dragging>.scroll-rail,.scroll-rail:hover{opacity:1}.scroll-thumb{position:absolute;top:0;right:3px;width:3px;border-radius:3px;background:var(--accent);opacity:.46;transition:width 140ms,right 140ms,opacity 140ms}.scroll-rail:hover .scroll-thumb,.scroll-dragging .scroll-thumb{right:2px;width:6px;opacity:.95}section[id],main[id]{scroll-margin-top:105px}
dialog{width:min(620px,calc(100% - 32px));padding:24px;border:1px solid var(--line);border-radius:var(--radius-dialog);background:var(--panel);color:var(--text);box-shadow:0 18px 60px #00000025}dialog::backdrop{background:#17141b70}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.dialog-header h2{font-size:22px}.preference-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.preference-options button{padding:12px 10px;min-height:45px;border:1px solid var(--line);border-radius:8px;background:transparent;font-size:13px;line-height:1.5}.preference-options button:hover{background:var(--hover)}.preference-options button[aria-pressed=true]{background:var(--soft);border-color:var(--accent);color:var(--accent)}
@media(min-width:1600px){.hero{padding-top:88px}.hero-media{margin-top:64px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.header nav{gap:18px}.brand-product{display:none}.section{padding-block:80px}.together-grid,.personal-grid{gap:40px}.app-panel{gap:36px}.app-tabs button{padding:12px 16px}.guide{gap:35px}.details-grid{gap:40px 60px}}
@media(max-width:767px){.wrap{width:calc(100% - 40px)}.nav-inner{width:calc(100% - 32px);height:64px;gap:12px}.brand{font-size:19px}.brand .cat{width:32px;height:36px}.header nav{display:none}.hero{padding-top:48px}h1{font-size:clamp(28px,6.8vw,44px);letter-spacing:-.045em;line-height:1.4}.hero-copy{font-size:15px;max-width:470px}.hero-media{margin-top:40px;aspect-ratio:4/3}.product-label{font-size:11px;margin-bottom:20px}.section{padding-block:64px}.section-copy>p:not(.eyebrow){font-size:15px;margin-top:20px}.dock-media{margin-top:32px;aspect-ratio:4/3}.dock-caption{font-size:12px;gap:20px}.together-grid,.personal-grid,.app-panel,.guide{grid-template-columns:1fr;gap:32px}.together-media{aspect-ratio:4/3}.app-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%;margin-top:32px}.app-tabs button{padding:12px 8px;font-size:13px}.app-panel{min-height:0}.app-copy h3{font-size:23px}.app-services{margin-bottom:12px}.feature-list{margin-top:22px;gap:12px 16px}.details-grid{gap:32px;grid-template-columns:1fr;margin-top:36px}.details-grid article{max-width:540px}.details-grid h3{font-size:18px}.details-grid p{font-size:14px}.guide{gap:32px}.faq summary{font-size:15px}.faq p{font-size:13px}.closing{padding:60px 0}.footer{display:flex;flex-wrap:wrap;gap:16px}.footer p{width:100%;order:3}.preference-options{grid-template-columns:repeat(2,minmax(0,1fr))}dialog{padding:20px}.dialog-header{margin-bottom:16px}.preference-options button{font-size:12px;min-height:42px;padding:10px 7px}}
@media(prefers-reduced-motion:reduce){.scroll-content{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.button:hover{transform:none}}
.customization{background:var(--panel)}.installer-media{aspect-ratio:16/10;margin-top:48px}.bundle-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:end}.bundle-copy{color:var(--muted);font-size:17px;line-height:1.9}.bundle-media{aspect-ratio:2;margin-top:48px;background:var(--soft)}.accessory-list{list-style:none;margin:0;padding:28px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;border-bottom:1px solid var(--line);font-size:15px;color:var(--accent);text-align:center}.language-button svg{width:19px;height:19px;display:block}@media(max-width:767px){.bundle-heading{grid-template-columns:1fr;gap:24px}.bundle-copy{font-size:15px}.installer-media,.bundle-media{aspect-ratio:4/3;margin-top:32px}.accessory-list{grid-template-columns:repeat(2,minmax(0,1fr));font-size:14px}}
.app-copy,.details-grid>article,.section-copy,.bundle-copy{min-width:0}.feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.companion-benefits{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}.companion-benefits h3{font-size:26px;color:var(--accent)}.companion-benefits p,.subscription p{margin-top:14px;color:var(--muted);font-size:15px;line-height:1.85}.subscription{display:flex;justify-content:space-between;gap:48px;margin-top:48px;padding-top:36px;border-top:1px solid var(--line)}.subscription h3{font-size:20px}.subscription-providers{display:flex;flex-wrap:wrap;gap:0 26px;align-content:center;flex-shrink:0;font-size:19px;font-weight:600}.subscription-providers p{width:100%;font-size:12px;font-weight:400;margin-top:8px}@media(max-width:767px){.companion-benefits{grid-template-columns:1fr;gap:32px;margin-top:40px;padding-top:32px}.companion-benefits h3{font-size:23px}.subscription{flex-direction:column;gap:24px;margin-top:32px;padding-top:28px}.subscription-providers{font-size:18px}}
.subscription>div,.companion-benefits>article{min-width:0}.subscription-providers{width:220px;max-width:100%}
