/* Resolution Blue / White / Flamingo — a stable, architectural service identity. */
:root{
 --brand-blue:#002F7B;--brand-white:#FFFFFF;--brand-accent:#F05745;
 --navy-deep:#001F52;--navy-ink:#101F36;--surface:#F3F5F8;--surface-blue:#EBF0F7;
 --forest:var(--brand-blue);--forest-deep:var(--navy-deep);--emerald:var(--brand-blue);
 --emerald-bright:#164A91;--green:var(--brand-blue);--amber:var(--brand-white);--red:var(--brand-accent);
 --ink:var(--navy-ink);--muted:#526078;--paper:var(--brand-white);--line:#D4DCE8;--pale-emerald:var(--surface-blue);
}
body{background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased}
::selection{background:#DCE7FA;color:var(--brand-blue)}
.container{max-width:1240px}
.site-header{border-top:4px solid var(--brand-blue);border-bottom:1px solid var(--line);box-shadow:0 2px 14px #001F5208}
.brand{font-weight:800;letter-spacing:.025em;color:var(--brand-blue)}
.brand small{color:var(--muted);font-weight:500;letter-spacing:.035em}
.brand-mark{border-radius:0;background:var(--brand-blue)}
.brand-mark:after{height:4px;background:var(--brand-accent)}
.button{border-radius:0;background:var(--brand-blue);border-color:var(--brand-blue);font-size:1rem}
.button:hover{background:var(--navy-deep);border-color:var(--navy-deep)}
.header-cta{border-left:3px solid var(--brand-accent);font-size:.875rem;min-height:48px}
.site-header>nav a:hover{color:var(--brand-blue)}
.language-menu>summary,.language-panel,.language-panel nav a{border-radius:0}
.language-panel{border-top:3px solid var(--brand-blue);box-shadow:0 18px 44px #001F5224}
.language-panel nav a[aria-current=page]{background:var(--surface-blue);border-color:var(--brand-blue)}
.language-panel nav a:hover{background:var(--surface)}
:focus-visible,.story-page summary:focus-visible{outline:3px solid var(--brand-accent);outline-offset:4px}
.signal-motif{gap:4px}
.signal-motif i{width:16px;height:4px;border-radius:0;background:var(--brand-blue)}
.signal-motif i:nth-child(2){background:#C4D2E8}
.signal-motif i:nth-child(3){background:var(--brand-accent)}

/* A clear navy column, an expansive film, and one precise coral edge. */
.story-page .hero-stage{background:var(--brand-blue)}
.story-page .hero-stage:before{background:var(--brand-accent);opacity:1;top:28px;bottom:77px;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%)}
.story-page .hero-film{top:36px;bottom:88px;width:62%;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%);background:var(--navy-deep)}
.story-page .hero-film:after{background:linear-gradient(90deg,#002F7B66,transparent 32%),linear-gradient(0deg,#00132E33,transparent 35%)}
.story-page .hero-inner{width:88%;max-width:1440px;min-height:650px;padding:44px 0 48px}
.story-page .hero-copy{width:43%;max-width:540px}
.story-page .hero-category{color:#fff;font-size:.8125rem;font-weight:600;letter-spacing:.03em;padding-left:13px;border-left:3px solid var(--brand-accent);line-height:1.8}
.story-page .hero h1{font-size:clamp(2.5rem,3.8vw,4rem);font-weight:850;line-height:1.32;letter-spacing:.015em;text-shadow:none}
.story-page .hero-heading-context{font-size:clamp(1rem,1.4vw,1.2rem);font-weight:600;line-height:1.85;letter-spacing:.02em;margin-bottom:16px}
.story-page .hero-subhead{display:block;font-size:1.25rem;line-height:1.85;font-weight:650;margin-top:24px}
.story-page .hero-description{color:#D7E2F4;font-size:1rem;line-height:1.9;margin-top:14px}
.story-page .hero-assurances{color:#E1E9F7;font-size:.8125rem;line-height:1.8}
.hero-assurances a{color:#fff}
.hero-assurances svg{color:#fff}
.story-page .hero-actions>.button:first-child{background:#fff;color:var(--brand-blue);border-color:#fff;border-bottom:3px solid var(--brand-accent)}
.story-page .hero-actions>.button:first-child:hover{background:#EAF0F9;border-color:#EAF0F9;border-bottom-color:var(--brand-accent)}
.story-page .hero-actions>.button-outline{background:transparent;color:#fff;border-color:#FFFFFF99}
.story-page .hero-actions>.button-outline:hover{background:#FFFFFF14;border-color:#fff}
.story-page .hero-film-caption{bottom:30px;color:#E1E9F7}
.hero-film-caption>span:last-child{border-left-color:#FFFFFF55}
.watch-film-duration{color:#D6E2F6}
.video-pause{background:#001F52AA;border-color:#FFFFFF80}
.story-page .hero-bottom{background:#fff;border-bottom:1px solid var(--line);border-top:0;color:var(--brand-blue)}
.story-page .hero-bottom-inner{min-height:80px;gap:40px}
.story-page .hero-language-intro{color:var(--brand-blue)}
.story-page .hero-language-intro>strong{font-size:2.5rem;font-weight:800;position:relative}
.story-page .hero-language-intro>strong:after{content:"";position:absolute;left:1px;right:1px;bottom:-2px;height:3px;background:var(--brand-accent)}
.story-page .hero-language-list{color:var(--muted);gap:12px 28px}
.story-page .hero-language-list li{font-size:.875rem;border-color:var(--line)}

/* Flat, aligned chapter numbers and generous horizontal rules provide rhythm. */
.story-page .section{padding:62px 0}
.story-page h2{font-size:clamp(1.625rem,2.5vw,2.375rem);line-height:1.65;font-weight:800;letter-spacing:.01em;color:var(--brand-blue)}
.story-page .eyebrow{font-size:.875rem;font-weight:650;color:var(--brand-blue);gap:14px;margin-bottom:18px}
.story-page .section-number{display:inline-grid;place-items:center;min-width:38px;height:38px;padding:0;border:0;border-bottom:3px solid var(--brand-accent);color:var(--brand-blue);font:800 1rem/1 Arial,sans-serif;background:var(--surface-blue);flex-shrink:0}
.story-page .section-intro{font-size:1rem;line-height:1.95;color:var(--muted);max-width:620px}
.story-opening{gap:56px;align-items:center}
.story-connect{background:#fff}
.story-photo{border:1px solid var(--line);box-shadow:10px 10px 0 var(--surface-blue)}
.story-photo img{height:330px;object-position:70% 45%}
.story-photo figcaption{background:linear-gradient(transparent,#001F52E8);border-bottom:3px solid var(--brand-accent);padding:52px 24px 19px;font-size:1.125rem}
.story-photo figcaption span{font-size:.75rem;letter-spacing:.1em}
.story-answer{font-weight:650;color:var(--brand-blue)}
.marker{--marker-ink:rgba(240,87,69,.20);background-image:linear-gradient(transparent 67%,var(--marker-ink) 67%,var(--marker-ink) 93%,transparent 93%)}
.marker-on-dark{--marker-ink:rgba(240,87,69,.56)}
.translation-disclosure{border-color:var(--line);background:#fff}
.translation-disclosure summary{font-size:.875rem}
.story-features{margin-top:36px;padding-top:24px;border-top:2px solid var(--brand-blue)}
.story-page .feature-grid-heading h3{color:var(--brand-blue);font-size:1.125rem}
.story-page .feature-grid-heading p{font-size:.8125rem;color:var(--muted)}
.story-page .feature-grid{gap:0;border-left:1px solid var(--line);border-top:1px solid var(--line)}
.story-page .feature-card{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:#fff;padding:22px 18px 16px;position:relative;transition:background .18s,color .18s;transform:none}
.story-page .feature-card:before{content:"";position:absolute;left:18px;top:-1px;width:26px;height:3px;background:var(--brand-accent);transform:scaleX(0);transform-origin:left;transition:transform .18s}
.story-page .feature-card:hover{background:var(--surface-blue);transform:none;border-color:var(--line);box-shadow:none}
.story-page .feature-card:hover:before,.story-page .feature-card:focus-visible:before{transform:scaleX(1)}
.story-page .feature-card-top{align-items:center;margin-bottom:14px}
.story-page .feature-card-number{display:inline;font:700 .75rem/1.5 Arial;color:#7B8BA4}
.story-page .feature-icon{color:var(--brand-blue);background:transparent}
.story-page .feature-card-title{font-size:1rem;color:var(--brand-blue);font-weight:750}
.story-page .feature-card-description{font-size:.875rem;color:var(--muted)}
.story-page .feature-card-action{font-size:.8125rem;border-top-color:var(--line);color:var(--brand-blue)}
.story-page .feature-plus{background:var(--brand-blue);color:#fff;border-radius:0;width:26px;height:26px}
.story-page .feature-card:hover .feature-plus{background:var(--navy-deep)}

/* Support reads like a simple division of responsibilities. */
.story-delegate{background:var(--surface);border-color:var(--line)}
.story-roles{border-top:2px solid var(--brand-blue);background:#fff}
.story-roles>div{padding:14px 18px;border-color:var(--line);grid-template-columns:72px minmax(0,1fr)}
.story-roles>div:last-child{background:var(--brand-blue)}
.story-roles>div:last-child span,.story-roles>div:last-child strong{color:#fff}
.story-goal{font-size:1.1875rem;line-height:1.9}
.story-chat.conversation{border:1px solid #C7D3E4;border-radius:0;box-shadow:0 10px 25px #001F520B;background:#E9EEF5}
.story-chat .conversation-top{background:#fff;color:var(--brand-blue);border-bottom:1px solid var(--line)}
.story-chat .conversation-top small{color:var(--muted)}
.story-chat .conversation-top .teams-letter{border-radius:0;background:var(--brand-blue);color:#fff}
.story-chat .outgoing{background:#fff;border-color:#D1DAE7;color:var(--ink)}
.story-chat .incoming{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}
.story-attachment{border-color:var(--line)}
.story-chat-done{color:var(--brand-blue)}
.story-support-strip{border-color:#CBD5E5;border-top-width:2px}
.story-support-strip>.ui-icon{color:var(--brand-blue);flex-shrink:0}

/* Security is the visual anchor of the story, with readable open disclosures. */
.story-security{background:var(--brand-blue);color:#fff;position:relative;border-top:4px solid var(--navy-deep)}
.story-security:before{content:"";position:absolute;top:-4px;left:6%;width:72px;height:4px;background:var(--brand-accent)}
.story-security h2,.story-security .eyebrow,.story-security .story-policy-heading{color:#fff}
.story-security .section-number{background:#FFFFFF12;color:#fff}
.story-security .section-intro{color:#D9E4F5}
.story-security .marker{--marker-ink:rgba(240,87,69,.56)}
.story-policy-heading{padding-top:24px;border-top:1px solid #FFFFFF35;margin-top:30px}
.story-policy-heading>span{color:#D0DDF0}
.story-policy-grid{gap:0;border-top:1px solid #FFFFFF4D;border-left:1px solid #FFFFFF4D}
.story-security .policy-detail{background:transparent;border:0;border-right:1px solid #FFFFFF4D;border-bottom:1px solid #FFFFFF4D}
.story-security .policy-detail summary{color:#fff;min-height:72px;padding:19px 20px}
.story-security .policy-detail summary>.ui-icon:first-child{color:#fff}
.story-security .policy-detail summary>.ui-icon:last-child{color:#FFAA9E}
.story-security .policy-detail summary:hover{background:#FFFFFF0D}
.story-security .policy-detail[open]{background:#fff;color:var(--ink)}
.story-security .policy-detail[open] summary,.story-security .policy-detail[open] summary>.ui-icon{color:var(--brand-blue)}
.story-security .policy-detail p{color:var(--ink);font-size:1rem;padding:0 20px 22px}
.story-security-bottom{background:var(--navy-deep);border-left:3px solid var(--brand-accent);gap:28px;padding:24px 28px;margin-top:24px}
.story-security-bottom .button{border-radius:0;color:var(--brand-blue)}
.story-security-bottom .button:hover{background:#E7EEF9}
.story-security .micro-note{color:#CCD9EF;font-size:.75rem}
.story-security summary:focus-visible{outline-color:#fff;outline-offset:-4px}

/* One strong monthly plan and a quiet setup panel. */
.story-start{background:#fff;border-top:0}
.story-start>.container>.section-topline .eyebrow:before{content:"";width:28px;height:3px;background:var(--brand-accent);flex-shrink:0}
.story-page .price-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:0;border:1px solid var(--line);margin-top:28px}
.story-page .price-initial{background:var(--surface);border:0;border-top:4px solid #BAC7DB;border-radius:0;padding:30px 32px}
.story-page .price-monthly{background:var(--brand-blue);color:#fff;border:0;border-top:4px solid var(--brand-accent);border-radius:0;padding:30px 32px}
.price-monthly .price-label,.price-monthly .price-value,.price-monthly .price-value small,.price-monthly .monthly-includes>span{color:#fff}
.price-monthly .monthly-includes svg{color:#fff;stroke:currentColor}
.price-monthly .monthly-includes{border-top-color:#FFFFFF40}
.price-monthly .included-badge{background:#fff;color:var(--brand-blue);font-size:.75rem;border-radius:0}
.price-monthly .marker{--marker-ink:rgba(240,87,69,.56)}
.story-page .price-value>span{font-size:3.625rem;font-weight:750;letter-spacing:-.025em}
.story-page .monthly-includes>span{font-size:.8125rem}
.volume-note{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.story-faq{border-top:2px solid var(--brand-blue);margin-top:30px}
.story-faq>h3{padding-left:14px;border-left:3px solid var(--brand-accent);font-weight:750}
.faq-list details{border-bottom-color:var(--line)}
.faq-list .q{color:var(--brand-blue);font-weight:750}
.faq-plus{color:var(--brand-blue)}
.faq-list details[open]>summary{color:var(--brand-blue)}
.faq-answer{color:var(--muted)}

/* The news archive and dialogs share the same typographic and color system. */
.news-home{background:var(--surface);padding:36px 0 38px}
.news-kicker{color:var(--brand-blue);font-size:.75rem;letter-spacing:.1em}
.news-home-heading h2{font-weight:800}
.news-home-heading>p{font-size:.8125rem}
.news-all-link{font-size:.875rem;border-bottom-color:var(--brand-accent)}
.news-compact-list,.news-list{border-top:2px solid var(--brand-blue)}
.news-compact-item>a:hover{background:#E6EDF7}
.news-category,.news-category[data-kind=information]{background:#E7EDF6;border-color:#CCD7E9;color:var(--brand-blue);border-radius:0;font-size:.75rem}
.news-category[data-kind=security]{background:#FFF0EC;border-color:#F4C5BC;color:#842B22}
.news-row-title{color:var(--ink)}
.news-masthead{background:var(--brand-blue);color:#fff;border-bottom:3px solid var(--navy-deep)}
.news-masthead:after{height:3px;background:var(--brand-accent)}
.news-masthead h1,.news-masthead .news-kicker{color:#fff}
.news-masthead .container>p,.news-masthead .news-breadcrumbs{color:#D7E3F5}
.news-masthead .news-breadcrumbs{font-size:.75rem}
.news-category-filters button{border-radius:0}
.news-category-filters button[aria-pressed=true]{box-shadow:inset 0 -3px var(--brand-accent)}
.news-tag-select select{border-radius:0}
.news-item-copy p{font-size:1rem}
.news-tags{font-size:.8125rem}
.news-support{background:var(--surface)}
.news-detail-heading{border-bottom:2px solid var(--brand-blue)}
.news-detail-body .news-standfirst{background:var(--surface);border-left-color:var(--brand-accent)}
.feature-dialog{border-radius:0;border-top:4px solid var(--brand-blue)}
.feature-dialog-toolbar{background:var(--surface);border-bottom-color:var(--line)}
.feature-dialog-support{border-left:3px solid var(--brand-accent);background:var(--surface-blue)}
.story-page .feature-dialog .feature-icon{background:var(--surface-blue)}
.feature-dialog-close{border-radius:0}
.film-dialog{border-radius:0;background:#071B36}
.film-dialog-toolbar{border-top:3px solid var(--brand-accent)}
.film-close:focus-visible,.film-dialog a:focus-visible{outline-color:#fff}

/* A confident close, with the warm accent reserved for the main action. */
.story-page .contact-section{background:var(--brand-blue);border-top:4px solid var(--navy-deep);padding:50px 0}
.contact-heading .eyebrow{color:#D8E4F7;font-size:.875rem}
.contact-heading .eyebrow:before{content:"";width:28px;height:3px;background:var(--brand-accent);flex-shrink:0}
.story-page .contact-heading h2{color:#fff;font-size:clamp(1.875rem,3vw,2.75rem);font-weight:800;line-height:1.7}
.contact-heading>p:last-child{color:#D8E4F7}
.contact-primary{background:var(--brand-accent);color:#071B36;border-color:var(--brand-accent);font-weight:800;border-radius:0}
.contact-primary:hover{background:#FF7564;border-color:#FF7564;color:#071B36}
.contact-actions>small,.demo-link-block p,.copy-status{color:#D8E4F7}
.copy-password{border-color:#97B0D8;border-radius:0}
.site-footer{background:var(--navy-deep);border-top:1px solid #FFFFFF25}
.site-footer .brand-mark{background:var(--brand-blue);border:1px solid #FFFFFF55}
.site-footer .brand small,.footer-company p{color:#C3D1E8}
.footer-company strong{color:#fff}
.footer-bottom{color:#B9C9E1}
.footer-bottom .signal-motif i{width:16px;height:3px;opacity:1}
.footer-bottom .signal-motif i:first-child{background:#5B82C0}
.footer-bottom .signal-motif i:nth-child(2){background:#fff}
.back-top{border-radius:0;border-color:#8EA6CC}
.back-top:hover{background:var(--brand-blue)}

@media(min-width:1700px){.story-page .hero-inner{min-height:690px}.story-page .hero h1{font-size:4rem}}
@media(max-width:1100px){
 .story-page .hero-film{inset:0;width:100%;height:100%;clip-path:none}
 .story-page .hero-film:after{background:linear-gradient(90deg,#001F52F5 0%,#001F52CF 36%,#001F5220 100%)}
 .story-page .hero-copy{width:64%;max-width:570px}
 .story-page .hero-inner{min-height:620px}
 .story-opening{gap:32px}
 .story-page .feature-card{padding:20px 18px 15px}
 .story-page .price-initial,.story-page .price-monthly{padding:26px}
 .story-page .price-value>span{font-size:3.125rem}
 .story-security .policy-detail summary{font-size:.875rem;padding:17px 15px}
}
@media(max-width:767px){
 .site-header{border-top-width:3px}.site-header .brand{font-weight:800;letter-spacing:0}
 .story-page .section{padding:42px 0}.story-page h2{font-size:clamp(1.4375rem,5.6vw,1.875rem);line-height:1.7;letter-spacing:0}
 .story-page .eyebrow{font-size:.8125rem;gap:11px;margin-bottom:16px}.story-page .section-number{min-width:32px;height:32px;font-size:.875rem;padding:0}
 .story-page .hero-inner{width:100%;min-height:0;padding:var(--mobile-film-height) 0 0}
 .story-page .hero-film{inset:0 0 auto;width:100%;height:var(--mobile-film-height)}
 .story-page .hero-film:after{display:none}
 .story-page .hero-copy{width:100%;max-width:none;padding:24px 6% 28px;background:var(--brand-blue)}
 .story-page .hero h1{font-size:clamp(2.1rem,8.6vw,3.5rem);line-height:1.35}
 .story-page .hero-heading-context{font-size:1rem;line-height:1.8;margin-bottom:12px}
 .story-page .hero-subhead{font-size:1rem;line-height:1.8;margin-top:16px}.story-page .hero-description{font-size:1rem}
 .story-page .hero-bottom-inner{display:block;padding:16px 0;min-height:0}
 .story-page .hero-language-intro>strong{font-size:1.625rem}.story-page .hero-language-list{gap:5px 17px;margin-top:12px}.story-page .hero-language-list li{font-size:.8125rem}
 .story-opening{gap:25px}.story-photo{box-shadow:6px 6px 0 var(--surface-blue)}.story-photo img{height:auto;aspect-ratio:1.8}.story-photo figcaption{padding:36px 18px 15px;font-size:1rem}
 .story-features{padding-top:22px;margin-top:28px}.story-page .feature-grid-heading h3{font-size:1.0625rem}.story-page .feature-grid-heading p{font-size:.8125rem}
 .story-page .feature-card{padding:18px 15px 13px}.story-page .feature-card-title{font-size:1rem}.story-page .feature-card-description{font-size:.875rem}.story-page .feature-card-action{font-size:.8125rem}
 .story-roles>div{padding:13px 14px;grid-template-columns:60px minmax(0,1fr)}.story-goal{font-size:1.125rem}
 .story-policy-heading{padding-top:21px;margin-top:23px}.story-policy-grid{gap:0}.story-security .policy-detail summary{min-height:92px;padding:15px 13px;font-size:.875rem;line-height:1.75}.story-security .policy-detail p{padding:0 13px 18px;font-size:1rem}
 .story-security-bottom{padding:20px;grid-template-columns:1fr;gap:17px}.story-security-bottom .button{font-size:.875rem}
 .story-page .price-grid{grid-template-columns:minmax(0,1fr)}.story-page .price-initial,.story-page .price-monthly{padding:23px}.story-page .price-value>span{font-size:3rem}.story-page .monthly-includes>span{font-size:.8125rem}
 .story-faq>h3{font-size:1.125rem}.story-page .volume-note p{font-size:.8125rem}
 .news-home{padding:28px 0 30px}.news-home .news-kicker{font-size:.75rem}.news-home-heading{gap:6px 12px}.news-home-heading h2{font-size:1.5rem}.news-all-link{font-size:.8125rem}
 .news-category{font-size:.75rem}.news-meta time{font-size:.75rem}.news-row-title{font-size:.875rem}.news-item-copy p{font-size:1rem}.news-tags{font-size:.8125rem}.news-list-toolbar{font-size:.75rem}.news-category-filters button{font-size:.875rem}.news-tag-select select{font-size:.875rem}
 .news-page .news-support p{font-size:1rem}.news-detail-body,.news-detail-body .news-standfirst{font-size:1rem}.news-inline-link{font-size:.875rem}.news-breadcrumbs{font-size:.75rem}
 .story-page .contact-section{padding:38px 0}.story-page .contact-heading>.eyebrow{font-size:.8125rem}.story-page .contact-heading h2{font-size:1.875rem}
 .footer-company,.footer-company p,.footer-bottom,.footer-bottom small,.footer-bottom>span:last-child{font-size:.75rem}
}
/* Preserve the full-screen portrait film and its natural colors on phones. */
@media(max-width:767px) and (orientation:portrait){
 .story-page .hero-stage{min-height:max(640px,calc(100svh - 76px));background:#071B36}
 .story-page .hero-film{inset:0;width:100%;height:100%;aspect-ratio:auto;clip-path:none}
 .story-page .hero-film:after{display:block;background:linear-gradient(180deg,#00000008 0%,transparent 38%,#00000020 53%,#00000094 77%,#000000D1 100%)}
 .story-page .hero-inner{min-height:max(640px,calc(100svh - 76px));width:100%;padding:250px 6% 26px;display:flex;align-items:flex-end}
 .story-page .hero-copy{width:100%;padding:0;background:transparent}
 .story-page .hero-copy:before{display:none}
 .story-page .hero h1{text-shadow:0 2px 22px #0005}
 .story-page .hero-heading-context{font-size:.9375rem;line-height:1.7;margin-bottom:10px}
 .story-page .hero-copy .marker{background:none}
 .story-page .hero-actions>.button-outline{background:#00000030;border-color:#FFFFFFB3}
 .story-page .video-pause{background:#071B368F;border-color:#FFFFFF80}
 html:not([lang=ja]) .story-page .hero h1{font-size:clamp(1.8rem,7vw,2.8rem);line-height:1.4}
 html[lang=ne] .story-page .hero h1,html[lang=th] .story-page .hero h1{line-height:1.5}
}
@media(max-width:360px){.story-page .hero h1{font-size:2rem}.story-page .hero-actions{grid-template-columns:1fr}.story-page .price-value>span{font-size:2.625rem}}
@media(prefers-reduced-motion:reduce){.story-page .feature-card:before,.story-page .feature-card{transition:none}}

/* Readability system: explicit foregrounds for every light/dark surface and state. */
:root{--text-main:#101F36;--text-secondary:#445570;--text-on-dark:#FFFFFF;--text-on-dark-secondary:#E0E9F7;--control-border:#8193AD;--header-height:90px}
body{color:var(--text-main);text-size-adjust:100%;-webkit-text-size-adjust:100%}
html{scroll-padding-top:calc(var(--header-height) + 20px)}
main [id]{scroll-margin-top:20px}
.story-page .container,.news-page .container{max-width:1240px}
.story-page h2,.news-page h1,.news-page h2{overflow-wrap:break-word;text-wrap:pretty}
.story-page .section-intro,.faq-answer,.feature-dialog-description,.feature-dialog-support p,.news-item-copy p,.news-detail-body{color:var(--text-secondary)}
.story-page .section-intro,.story-answer,.story-chat .chat,.story-support-strip p,.feature-dialog-description,.feature-dialog-support p,.news-detail-body,.news-detail-body .news-standfirst{font-size:1rem;line-height:1.9}
.story-page .micro-note,.story-page .price-footnote,.story-page .volume-note p,.story-chat .chat-name,.story-chat .conversation-top small,.contact-actions>small,.copy-status{font-size:.875rem;line-height:1.85}
.story-page .eyebrow,.story-page .feature-grid-heading p,.feature-dialog-eyebrow,.feature-dialog-kicker,.feature-dialog-close,.feature-dialog-back,.feature-dialog-points li,.language-panel-note{font-size:.875rem;line-height:1.75}
.story-page .micro-note,.story-page .price-footnote,.story-page .volume-note p,.story-chat .chat-name{color:var(--text-secondary)}
/* Highlights sit beneath glyphs, so white and Japanese text remain intact. */
.marker{color:inherit;background-color:transparent;--marker-ink:#F8C2BA;background-image:linear-gradient(transparent 90%,var(--marker-ink) 90%,var(--marker-ink) 100%);padding:0 .02em .08em}
.story-page .hero .marker,.story-security .marker,.price-monthly .marker,.contact-section .marker{--marker-ink:#FFAA9E}
.story-page .hero-subhead{color:#fff;font-weight:650;text-wrap:pretty}
.story-page .hero-category{font-size:.875rem;color:#fff}
.story-page .hero h1{color:#fff}
.story-page .hero-actions>.button{min-height:56px;font-size:.9375rem;gap:14px}
.story-page .hero-actions>.button:first-child{background:#fff;color:var(--brand-blue)}
.story-page .hero-actions>.button-outline{background:var(--navy-deep);color:#fff;border-color:#fff}
.story-page .hero-actions>.button-outline:hover{background:#103D80;color:#fff;border-color:#fff}
.video-pause{min-height:44px;background:var(--navy-deep);color:#fff;font-size:.875rem;border-color:#B6C7E1}
.video-pause:hover{background:#103D80;color:#fff}
.story-page .hero-film-caption{color:#E0E9F7}
/* Three generous columns give every feature a readable title and description. */
.story-page .feature-grid,html:not([lang=ja]) .story-page .feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:0}
.story-page .feature-card{min-width:0;padding:22px;border:1px solid #B9C7DB;background:#fff;color:var(--text-main);text-align:left}
.story-page .feature-card:hover{background:#EBF0F7;border-color:var(--brand-blue)}
.story-page .feature-card-title{font-size:1.0625rem;line-height:1.65;color:var(--brand-blue)}
.story-page .feature-card-description{font-size:1rem;line-height:1.8;color:var(--text-secondary)}
.story-page .feature-card-action{font-size:.875rem;color:var(--brand-blue);min-height:38px;gap:10px}
.story-page .feature-card-number{color:#52647F;font-size:.875rem}
.story-page .feature-card .feature-plus{color:#fff;background:var(--brand-blue)}
.story-page .feature-card:before{left:22px}
.story-page .feature-grid-heading{align-items:baseline;flex-wrap:wrap}
.story-page .story-photo{box-shadow:6px 6px 0 var(--surface-blue)}
.story-page .story-photo figcaption{background:linear-gradient(transparent,#00152BF5 38%);color:#fff}
.story-chat .incoming{background:var(--brand-blue);color:#fff}
.story-chat .outgoing{background:#fff;color:var(--text-main)}
.story-roles>div:last-child :is(span,strong){color:#fff}
/* White policy cards retain one legible color scheme, closed or expanded. */
.story-page .story-security{background:var(--brand-blue);color:#fff}
.story-page .story-security :is(h2,.eyebrow,.story-policy-heading){color:#fff}
.story-page .story-security .section-intro,.story-page .story-security .micro-note,.story-policy-heading>span{color:var(--text-on-dark-secondary)}
.story-page .story-security .section-number{color:#fff;background:#164486}
.story-policy-grid{gap:12px;border:0;align-items:start}
.story-page .story-security .policy-detail,.story-page .story-security .policy-detail[open]{background:#fff;color:var(--text-main);border:1px solid #D0DAE9}
.story-page .story-security .policy-detail summary{color:var(--brand-blue);background:#fff;min-height:76px;gap:12px;padding:18px;font-size:1rem;line-height:1.7}
.story-page .story-security .policy-detail summary:hover{background:#EBF0F7;color:var(--brand-blue)}
.story-page .story-security .policy-detail summary>.ui-icon{color:var(--brand-blue)}
.story-page .story-security .policy-detail summary>span{min-width:0;overflow-wrap:break-word}
.story-page .story-security .policy-detail p{color:var(--text-secondary);padding:0 18px 20px;font-size:1rem;line-height:1.9}
.story-page .story-security .policy-detail[open] summary{background:#EBF0F7;color:var(--brand-blue);margin-bottom:16px;border-bottom:1px solid #D0DAE9}
.story-policy-heading{flex-wrap:wrap}
.story-policy-heading>span{font-size:.875rem}
.story-security-bottom{background:var(--navy-deep);color:#fff;grid-template-columns:minmax(0,1fr) auto}
.story-security-bottom .button{background:#fff;color:var(--brand-blue);font-size:.9375rem}
.story-security-bottom .button:hover{background:#E7EEF9;color:var(--brand-blue)}
.story-security-bottom .security-download{color:#fff;font-size:.875rem;min-height:44px;text-decoration:underline;text-underline-offset:5px}
/* Pricing: amounts, units and scope are all legible, including the tax notes. */
.story-page .price-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}
.story-page .price-initial{background:#F3F5F8;color:var(--text-main)}
.story-page .price-monthly{background:var(--brand-blue);color:#fff}
.story-page .price-label{font-size:1.0625rem;line-height:1.75}
.story-page .price-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px}
.story-page .price-value>span{font-size:clamp(2.75rem,4.1vw,3.625rem);font-variant-numeric:tabular-nums;white-space:nowrap}
.story-page .price-value>div{font-size:1rem;line-height:1.7}
.story-page .price-value small,html:not([lang=ja]) .story-page .price-value small{font-size:.875rem;line-height:1.7;margin-top:3px}
.story-page .price-initial :is(.price-label,.price-value){color:var(--brand-blue)}
.story-page .price-initial>p:not(.price-label),.story-page .price-initial .plain-list li{font-size:.9375rem;color:var(--text-secondary);line-height:1.85}
.story-page .price-monthly :is(.price-label,.price-value,.price-value small,.monthly-includes>span){color:#fff}
.story-page .price-monthly .monthly-includes{grid-template-columns:1fr;gap:12px;border-top-color:#FFFFFF55}
.story-page .price-monthly .monthly-includes>span{flex-direction:row;text-align:left;align-items:center;gap:12px;font-size:.9375rem;line-height:1.7}
.story-page .price-monthly .monthly-includes svg{width:24px;height:24px;color:#fff;stroke:currentColor}
.story-page .price-monthly .included-badge{background:#fff;color:var(--brand-blue);font-size:.875rem;white-space:normal}
.monthly-heading{flex-wrap:wrap;align-items:center}
.story-page .volume-note{flex-wrap:wrap;align-items:center}
.volume-note>a{min-width:44px;min-height:44px;display:grid;place-items:center}
/* Obvious interactive states; a two-color focus ring works on both surfaces. */
.button{color:#fff}
.button:hover{color:#fff}
:is(a,button,summary,select):focus-visible{outline:3px solid #002F7B;outline-offset:3px;box-shadow:0 0 0 6px #fff}
.story-page summary:focus-visible,.story-security summary:focus-visible,.language-menu summary:focus-visible,.language-panel a:focus-visible{outline:3px solid #002F7B;outline-offset:3px;box-shadow:0 0 0 6px #fff}
.story-page .contact-section :is(h2,.eyebrow){color:#fff}
.story-page .contact-heading>p:last-child,.contact-actions>small,.demo-link-block p,.copy-status{color:var(--text-on-dark-secondary)}
.story-page .contact-primary{background:#fff;border-color:#fff;border-bottom:3px solid var(--brand-accent);color:var(--brand-blue);min-height:64px;font-size:1rem}
.story-page .contact-primary:hover{background:#E7EEF9;border-color:#E7EEF9;border-bottom-color:var(--brand-accent);color:var(--brand-blue)}
.copy-password{min-height:44px;font-size:.875rem;padding:9px 12px;border-color:#B6C7E1}
.demo-link-block p{font-size:.875rem}
.demo-link-block .text-link{min-height:44px}
.story-faq .faq-list summary{gap:14px;align-items:start;min-height:60px}
.faq-list summary>span:nth-child(2){min-width:0;flex:1}
.faq-list summary:hover{background:#EBF0F7;color:var(--brand-blue)}
.faq-list summary .q,.faq-list summary .faq-plus{flex-shrink:0;color:var(--brand-blue)}
.feature-dialog{color:var(--text-main);background:#fff;overflow-y:auto}
.feature-dialog-body{padding:28px 32px}
.feature-dialog-description,.feature-dialog-support p{font-size:1rem}
.feature-dialog-close,.feature-dialog-back{min-height:44px;font-size:.875rem}
.feature-dialog-points li{font-size:.875rem;background:#F3F5F8;color:var(--text-main)}
.feature-dialog-footer{flex-wrap:wrap;gap:12px 24px}
.feature-dialog-footer .button{color:#fff;background:var(--brand-blue)}
.feature-dialog-footer .button:hover{color:#fff;background:var(--navy-deep)}
/* News, filters, and footer use the same readable baseline. */
.news-row-title{font-size:1rem;line-height:1.8}
.news-meta time,.news-category,.news-home-heading>p,.news-list-toolbar,.news-tags,.news-tag-select,.news-reset,.news-back-link{font-size:.875rem}
.news-category{background:#EBF0F7;color:var(--brand-blue)}
.news-masthead :is(.news-kicker,h1){color:#fff}
.news-masthead .container>p,.news-masthead .news-breadcrumbs{color:var(--text-on-dark-secondary)}
.news-masthead .container>p,.news-page .news-support p{font-size:1rem}
.news-breadcrumbs,.news-masthead .news-breadcrumbs{font-size:.875rem;line-height:1.8}
.news-breadcrumbs a,.news-tags a,.footer-policy{min-height:44px}
.news-category-filters button{min-height:44px;border-color:var(--control-border);font-size:.875rem;color:var(--brand-blue);background:#fff}
.news-category-filters button:hover{color:var(--brand-blue);background:#EBF0F7}
.news-category-filters button[aria-pressed=true],.news-category-filters button[aria-pressed=true]:hover{background:var(--brand-blue);color:#fff;border-color:var(--brand-blue)}
.news-tag-select select{font-size:1rem;border-color:var(--control-border);color:var(--brand-blue);background:#fff;min-height:48px}
.news-all-link,.news-inline-link{font-size:.875rem;line-height:1.8;min-height:44px}
.news-article-link:hover .news-row-title,.news-compact-item>a:hover .news-row-title{text-decoration:underline;text-underline-offset:4px}
.site-footer .brand{color:#fff}
.site-footer .brand small,.footer-company p,.footer-bottom{color:#D5E0F0}
.brand small{font-size:.75rem;line-height:1.6;letter-spacing:0}
.footer-company,.footer-company p,.footer-bottom,.footer-bottom small,.footer-bottom>span:last-child{font-size:.875rem;line-height:1.85}
.footer-top,.footer-bottom{flex-wrap:wrap}
.footer-policy{display:inline-flex;align-items:center;gap:8px;color:#E0E9F7}
.language-menu>summary{min-height:44px;border-color:var(--control-border);font-size:.875rem;color:var(--brand-blue)}
.language-panel{color:var(--text-main)}
.language-panel nav a{min-height:48px;color:var(--brand-blue)}
.site-header .menu-toggle{width:44px;height:44px;margin-left:0;color:#fff;background:var(--brand-blue)}
.mobile-nav{top:var(--header-height);max-height:calc(100dvh - var(--header-height));overscroll-behavior:contain}
.skip-link{top:0;transform:translateY(-150%)}
.skip-link:focus{top:10px;transform:translateY(0)}
@media(min-width:1700px){
 .site-header{gap:18px;padding-inline:3%}
 .site-header>nav{gap:14px;font-size:.875rem}
 .site-header .header-cta{font-size:.875rem;padding:12px 16px;gap:12px}
}
@media(max-width:1100px) and (min-width:768px){
 .story-page .hero-copy{background:var(--navy-deep);padding:26px;width:65%;max-width:600px;border-left:3px solid var(--brand-accent)}
 .story-page .hero-film:after{background:linear-gradient(90deg,#001F5240,transparent 65%)}
 .story-page .hero-inner{padding:40px 0 84px;min-height:620px}
 .story-page .hero-film-caption{font-size:.875rem;background:var(--navy-deep);padding:8px 12px;bottom:20px}
 .story-page .story-opening{gap:28px}
 .story-security-bottom{grid-template-columns:1fr;gap:20px}
}
@media(max-width:767px){
 :root{--header-height:76px}
 .story-page .section{padding:40px 0}
 .story-page .eyebrow{font-size:.875rem;line-height:1.8}
 .story-page h2{font-size:clamp(1.4rem,5.5vw,1.875rem);line-height:1.7}
 .story-page .feature-grid,html:not([lang=ja]) .story-page .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .story-page .feature-card{padding:17px 14px}
 .story-page .feature-card-title{font-size:1rem}
 .story-page .feature-card-description{font-size:.9375rem;line-height:1.8}
 .story-page .feature-card-action{font-size:.875rem}
 .story-page .story-security .policy-detail summary{padding:16px;min-height:84px;font-size:.9375rem}
 .story-policy-grid,html:not([lang=ja]) .story-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .story-security-bottom{grid-template-columns:1fr;padding:22px 18px}
 .story-page .price-grid{grid-template-columns:minmax(0,1fr)}
 .story-page .price-value>span{font-size:3rem}
 .story-page .price-monthly .monthly-includes>span{font-size:.9375rem}
 .story-page .price-label{font-size:1rem}
 .story-page .volume-note{padding:16px;gap:10px}
 .story-page .volume-note>span{font-size:.9375rem;line-height:1.8}
 .story-page .volume-note p{font-size:.875rem}
 .story-page .contact-heading h2{font-size:1.875rem}
 .feature-dialog-body{padding:24px 20px}
 .feature-dialog-support{padding:16px}
 .feature-dialog .feature-dialog-description,.feature-dialog .feature-dialog-support p{font-size:1rem}
 .news-home-heading{grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}
 .news-home .news-kicker{font-size:.75rem}
 .news-all-link{font-size:.875rem;max-width:170px}
 .news-row-title{font-size:1rem}
 .news-category,.news-meta time,.news-tags,.news-list-toolbar{font-size:.875rem}
 .news-tag-select{grid-template-columns:1fr;gap:8px;font-size:.875rem}
 .news-tag-select select{font-size:1rem}
 .news-page .news-item-copy h2{font-size:1.125rem}
 .news-item-copy p{font-size:1rem}
 .site-footer .brand small{font-size:.75rem;white-space:normal}
 .footer-company,.footer-company p,.footer-bottom,.footer-bottom small,.footer-bottom>span:last-child{font-size:.875rem}
 .language-panel{top:calc(var(--header-height) + 6px);max-height:calc(100dvh - var(--header-height) - 20px)}
 .mobile-nav{top:var(--header-height);max-height:calc(100dvh - var(--header-height))}
}
@media(max-width:767px) and (orientation:portrait){
 .story-page .hero-stage{min-height:calc(100svh - var(--header-height));background:var(--navy-deep)}
 .story-page .hero-inner{min-height:calc(100svh - var(--header-height));padding:230px 0 0;align-items:flex-end}
 .story-page .hero-film:after{background:linear-gradient(180deg,transparent 20%,#00000010 55%,#00152B50 100%)}
 .story-page .hero-copy{width:100%;padding:24px 6% 26px;background:#001F52F5;border-top:1px solid #FFFFFF30}
 .story-page .hero-heading-context{font-size:1rem;line-height:1.75;margin-bottom:10px}
 .story-page .hero h1{font-size:clamp(2rem,8.4vw,3.2rem);line-height:1.4;text-shadow:none}
 .story-page .hero-subhead,html:not([lang=ja]) .story-page .hero-subhead{display:block;font-size:1rem;line-height:1.85;margin-top:14px}
 .story-page .hero-actions{margin-top:20px;gap:10px}
 .story-page .hero-actions>.button{font-size:.875rem;min-height:52px;padding:13px 12px;gap:8px}
 .story-page .hero-actions>.button-outline{background:var(--navy-deep);color:#fff;border-color:#B6C7E1}
 .story-page .hero-actions>.button-outline:hover{background:#103D80;color:#fff}
 .story-page .video-pause{background:var(--navy-deep);right:6%;font-size:.875rem}
}
@media(max-width:440px){
 .story-policy-grid,html:not([lang=ja]) .story-policy-grid{grid-template-columns:1fr;gap:8px}
 .story-page .story-security .policy-detail summary{display:flex;min-height:62px;padding:15px 16px;font-size:1rem}
 .story-page .story-security .policy-detail summary>.ui-icon:last-child{margin-left:auto}
 .story-page .story-security .policy-detail p{font-size:1rem}
 .story-roles>div,html:not([lang=ja]) .story-roles>div{grid-template-columns:1fr;gap:5px}
 .story-roles span{font-size:.875rem}
 .story-page .price-value>span{font-size:2.75rem}
 .news-home-heading{display:flex;flex-wrap:wrap;align-items:center}
 .news-home-heading .news-kicker{flex-basis:100%;margin-bottom:0}
 .news-home-heading .news-all-link{margin-left:auto}
 .site-header .brand{font-size:1.0625rem;gap:6px}
 .site-header .brand-mark{width:28px;height:34px}
 .language-menu>summary{font-size:.875rem;padding:8px 6px}
}
@media(max-width:360px){
 .story-page .hero-actions,html:not([lang=ja]) .story-page .hero-actions{grid-template-columns:1fr}
 .story-page .hero-inner{padding-top:200px}
 .site-header .brand-mark{display:none}
 .story-page .feature-card{padding:15px 12px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .motion-ready .reveal{opacity:1;transition:none}
 .marker-motion .marker{background-size:100% 100%;transition:none}
 .feature-dialog[open]{animation:none}
}
@media(forced-colors:active){
 .marker{background:none;text-decoration:underline}
 .button,.feature-card,.policy-detail,select,summary{border:1px solid ButtonText}
}

html[lang=ja] .hero-actions>.button{white-space:nowrap}

/* Approved OK artwork: crop only its transparent padding, preserving the image. */
.brand .brand-logo{position:relative;display:block;width:270px;aspect-ratio:2032/312;overflow:hidden;flex-shrink:0}
.brand .brand-logo img{position:absolute;left:-3.54331%;top:-65.38462%;width:106.88977%;max-width:none;height:auto}
.site-header .brand{flex-shrink:0;min-height:44px}
.site-footer .brand-logo{width:320px;max-width:80vw}
.site-footer .brand-logo img{filter:brightness(0) invert(1)}

/* One clear statement, grounded type, and a diagonal edge that echoes the K. */
.story-page .hero--team .hero-stage{display:block;min-height:0;background:#001b48}
.story-page .hero--team .hero-stage:before{inset:0 0 0 auto;width:64%;height:auto;aspect-ratio:auto;background:linear-gradient(145deg,#F05745,#FFAC7A);clip-path:polygon(24% 0,100% 0,100% 100%,0 100%);transform:none;z-index:0}
.story-page .hero--team .hero-film{position:absolute;inset:0 0 0 auto;bottom:0;width:63%;height:100%;aspect-ratio:auto;clip-path:polygon(24% 0,100% 0,100% 100%,0 100%);z-index:0}
.story-page .hero--team .hero-film:after{background:linear-gradient(90deg,#001b4855,transparent 58%),linear-gradient(0deg,#001b4866,transparent 50%)}
.story-page .hero--team .hero-stage:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#001b48 0%,#00245f 65%,#00245ff0);clip-path:polygon(0 0,59% 0,49% 100%,0 100%)}
.story-page .hero--team .hero-inner{display:flex;align-items:center;position:relative;z-index:2;width:88%;max-width:1440px;min-height:clamp(620px,calc(100svh - var(--header-height)),820px);padding:64px 0 88px}
.story-page .hero--team .hero-copy{position:relative;isolation:isolate;width:64%;max-width:850px;padding:0;border:0;background:none}
.story-page .hero--team .hero-copy:before{display:none}
html .story-page .hero--team h1.hero-title{font-family:"Arial Black","DejaVu Sans",Arial,system-ui,sans-serif;font-size:clamp(3.4rem,6.65vw,7rem);font-weight:1000;line-height:1.08;letter-spacing:-.025em;text-shadow:none;color:#fff;overflow-wrap:normal;margin:0}
.hero-title-line{display:block;white-space:nowrap}
.hero-title-accent{color:#FF9B78}
@supports (background-clip:text){
 .hero-title-accent{background:linear-gradient(105deg,#FF7863 8%,#FFAA78 70%,#FFE1AE);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
}
.story-page .hero--team .hero-subhead{display:block;color:#fff;font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.9;letter-spacing:.055em;font-weight:650;margin-top:30px;max-width:30em;text-wrap:pretty}
.hero--team .hero-subhead>span{display:block}
.story-page .hero--team .hero-actions{margin-top:30px;gap:14px;display:flex;flex-wrap:wrap}
.story-page .hero--team .hero-actions>.button{min-height:56px;padding:16px 24px;max-width:none}
.story-page .hero--team .video-pause{z-index:3;top:auto;right:4%;bottom:24px}
@media(min-width:1440px){
 .site-header{gap:18px;padding-inline:3%}
 .site-header .brand-logo{width:250px}
 .site-header>nav{gap:16px}
}
@media(min-width:768px) and (max-width:1100px){
 .story-page .hero--team .hero-inner{min-height:620px}
 .story-page .hero--team .hero-stage:after{clip-path:polygon(0 0,72% 0,59% 100%,0 100%)}
 .story-page .hero--team .hero-copy{width:78%}
 html .story-page .hero--team h1.hero-title{font-size:clamp(3.5rem,7.9vw,5.5rem)}
 .story-page .hero--team .hero-subhead{font-size:1.0625rem;max-width:29em}
}
@media(max-width:767px){
 .site-header .brand{flex:1;min-width:0}
 .site-header .brand-logo{width:min(220px,100%);flex-shrink:1}
 .site-header,html:not([lang=ja]) .site-header{gap:10px}
 .site-header .language-menu{margin-left:0}
 .site-footer .brand-logo{width:280px}
 .story-page .hero--team .hero-stage:before{display:none}
 .story-page .hero--team .hero-stage:after{display:none}
 .story-page .hero--team .hero-film{position:absolute;inset:0;width:100%;height:100%;clip-path:none}
 .story-page .hero--team .hero-film:after{background:linear-gradient(180deg,transparent,#001b4833 60%,#001b48)}
 .story-page .hero--team .hero-inner{width:100%;min-height:calc(100svh - var(--header-height));padding:clamp(200px,30svh,310px) 0 0;align-items:flex-end}
 .story-page .hero--team .hero-copy{width:100%;max-width:none;background:#001b48f7;padding:30px 6% 32px;border:0}
 .story-page .hero--team .hero-copy:before{display:block;content:"";position:absolute;left:0;right:0;top:-24px;height:25px;background:#001b48f7;clip-path:polygon(0 100%,100% 0,100% 100%);z-index:-1}
 html .story-page .hero--team h1.hero-title{font-size:clamp(2.4rem,10.65vw,5rem);line-height:1.08;letter-spacing:-.025em}
 .story-page .hero--team .hero-subhead,html:not([lang=ja]) .story-page .hero--team .hero-subhead{font-size:1rem;line-height:1.85;letter-spacing:.025em;margin-top:20px;max-width:32em}
 .story-page .hero--team .hero-actions,html:not([lang=ja]) .story-page .hero--team .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
 .story-page .hero--team .hero-actions>.button{font-size:.875rem;padding:12px 10px;gap:8px;min-height:52px}
 .story-page .hero--team .video-pause{top:16px;right:6%;bottom:auto}
}
@media(max-width:360px){
 .site-header,html:not([lang=ja]) .site-header{gap:7px;padding-inline:4%}
 .site-header .language-menu>summary{gap:4px;padding:8px 5px}
 .site-header .language-menu>summary>.ui-icon:first-child{display:none}
 .story-page .hero--team .hero-inner{padding-top:180px}
 .story-page .hero--team .hero-subhead{font-size:.9375rem}
}
@media(forced-colors:active){
 .hero-title-accent{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText}
}

/* Finishing details: quiet reading surfaces, explicit actions, consistent states. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.button>span[aria-hidden=true],.text-link>span[aria-hidden=true]{display:inline-flex;align-items:center;flex-shrink:0}
.ui-icon.external-link-icon{width:16px;height:16px;stroke-width:1.8;flex-shrink:0}
.button .file-format{font:700 .6875rem/1.3 Arial,sans-serif;letter-spacing:.04em;border:1px solid currentColor;padding:3px 5px;flex-shrink:0}
.button:active{filter:brightness(.95)}
.site-header>nav a{transition:color .16s}
.site-header>nav a:after{height:2px;background:var(--brand-blue);bottom:16px}
.site-header>nav a:is(:focus-visible,[aria-current=page]):after{transform:scaleX(1)}
.site-header .header-cta{border-left-width:1px;justify-content:center;padding-inline:22px}
.mobile-nav a{min-height:48px}
.story-page .section{padding-block:76px}
.story-page h2{line-height:1.55;letter-spacing:.025em}
.story-page .contact-heading h2{line-height:1.55}
.story-page .section-number{background:none;min-width:0;height:auto;padding:0 12px 0 0;border-bottom:0;border-right:1px solid #A9B8CD;font:700 .875rem/1.4 Arial,sans-serif;color:var(--brand-blue)}
.story-page .story-security .section-number{background:none;color:#fff;border-right-color:#829AC0}
.story-page .eyebrow{gap:12px}
.story-page .story-photo{box-shadow:none}
.story-page .feature-card{transition:background-color .16s,border-color .16s}
.story-page .feature-card:before{content:none}
.story-page .feature-card-action{border-top:0;padding-top:4px}
.story-page .feature-card .feature-plus,.story-page .feature-card:hover .feature-plus{background:transparent;color:var(--brand-blue);width:24px;height:24px}
.story-page .feature-card:hover,.story-page .feature-card:focus-visible{background:#F3F6FA;border-color:#627FAD}
.story-page .feature-card:hover .feature-card-action{text-decoration:underline;text-underline-offset:4px}
.story-page .feature-card-description{margin-bottom:18px}
.story-page .story-chat.conversation{box-shadow:none}
.disclosure-toggle{position:relative;display:inline-block;width:18px;height:18px;flex:0 0 18px;margin-left:auto;color:var(--brand-blue);align-self:center}
.disclosure-toggle:before,.disclosure-toggle:after{content:"";position:absolute;top:8px;left:2px;width:14px;height:2px;background:currentColor}
.disclosure-toggle:after{transform:rotate(90deg);transition:transform .16s}
details[open]>summary>.disclosure-toggle:after{transform:rotate(90deg) scaleX(0)}
.story-faq .faq-list summary{align-items:center;padding:20px 12px 20px 0}
.story-faq .faq-list summary .q{align-self:flex-start;margin-top:3px;line-height:1.8}
.faq-list summary>span:nth-child(2){flex:1;min-width:0}
.faq-answer a{display:inline;line-height:1.9;text-decoration:underline;text-underline-offset:4px;border:0}
.faq-answer a .ui-icon{vertical-align:-.15em;margin-left:4px}
.translation-disclosure summary:hover,.more-questions>summary:hover{color:var(--navy-deep)}
.more-questions>summary{padding-right:12px}
.more-questions>.faq-list{padding-inline:18px;border-left:2px solid #C4D1E3}
.footer-bottom{justify-content:space-between}
.footer-policy:hover,.footer-news:hover{text-decoration:underline;text-underline-offset:5px}
.footer-policy .ui-icon{width:16px;height:16px}
.news-all-link,.news-inline-link{gap:10px}
html[lang=ne] .story-page h2,html[lang=th] .story-page h2{letter-spacing:0}
@media(max-width:767px){
 .story-page .section{padding-block:52px}
 .story-page h2{line-height:1.6;letter-spacing:.015em}
 .story-page .feature-card{padding:18px 15px 14px}
 .story-faq .faq-list summary{padding-block:18px;gap:10px}
 .more-questions>.faq-list{padding-left:12px;padding-right:0}
 .story-page .story-security-bottom .button{gap:10px;padding-inline:14px}
}
@media(prefers-reduced-motion:reduce){.disclosure-toggle:after,.button,.site-header>nav a,.site-header>nav a:after{transition:none}}
