:root{--blue:#1e2782;--bright:#255ae6;--ink:#18213a;--muted:#53617a;--line:#dce3f0;--pale:#f3f6fc;--paper:#fff;--serif:"Hiragino Mincho ProN","Yu Mincho",serif;--sans:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.95 var(--sans);overflow-wrap:anywhere}img{max-width:100%;display:block}a{color:inherit;text-underline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #255ae6;outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:.03em;line-height:1.6}h2{font-size:clamp(27px,3vw,40px)}h3{font-size:21px;font-weight:600;line-height:1.6}p+p{margin-top:20px}.wrap{width:min(1120px,calc(100% - 88px));margin-inline:auto}.skip{position:absolute;top:-100px;left:20px;background:#fff;padding:10px;z-index:20}.skip:focus{top:5px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:100px;padding:22px 44px;border-bottom:1px solid var(--line);background:white}.brand{display:flex;align-items:baseline;gap:18px;text-decoration:none;white-space:nowrap}.brand strong{font-family:var(--serif);font-size:26px;font-weight:500;letter-spacing:.1em}.brand span{font-size:12px;letter-spacing:.05em;color:var(--muted)}nav{display:flex;align-items:center;gap:25px;font-size:13px}nav a{text-decoration:none}.header-contact{font-size:13px;white-space:nowrap;color:var(--blue);border-bottom:1px solid var(--blue);text-decoration:none;padding-bottom:4px}.hero{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:7%;padding-block:65px 88px}.hero-copy h1{font-size:clamp(30px,3.5vw,46px);line-height:1.85;letter-spacing:.01em;color:var(--blue);margin-bottom:25px;white-space:nowrap}.hero-copy>p{font-size:16px;line-height:2.2;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:16px 24px;min-height:58px;text-decoration:none;font-size:14px;font-weight:600;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--blue);color:white}.primary:hover{background:#263ca6}.secondary{border-color:var(--blue);color:var(--blue);background:white}.secondary:hover{background:var(--pale)}.hero-note{display:block;color:var(--muted);font-size:12px;line-height:1.8;margin-top:14px}.hero-photo{position:relative;padding:0 20px 20px 0}.hero-photo:after{content:"";position:absolute;right:0;bottom:0;width:70%;height:72%;background:linear-gradient(130deg,var(--blue),var(--bright));z-index:-1}.hero-photo img{width:100%;height:550px;object-fit:cover;object-position:50% 43%}.topics-band{background:linear-gradient(120deg,#1e2782,#2145bd 65%,#255ae6);color:white;padding:75px 0}.topics-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:12%}.topics-grid h2{font-size:32px;line-height:1.85}.topic-list p{display:flex;align-items:center;gap:26px;font-size:19px;line-height:1.8;border-bottom:1px solid #ffffff35;padding:20px 0;margin:0}.topic-list p:first-child{padding-top:0}.topic-list span{font-family:var(--serif);font-size:16px;color:#c9d6ff;flex-shrink:0}.dialogue{padding-block:100px}.section-intro{display:grid;grid-template-columns:1fr 1.4fr;gap:12%;align-items:start}.section-intro p{color:var(--muted)}.process{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:38px;padding:60px 0 0;margin:0}.process li{border-top:1px solid var(--blue);padding-top:20px}.process span{font:22px var(--serif);color:var(--bright)}.process h3{margin:14px 0 12px;font-size:18px}.process p{font-size:14px;line-height:1.9;color:var(--muted)}.profile-band{background:var(--pale);padding:80px 0}.profile{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:13%}.profile>img{width:100%;max-height:560px;object-fit:cover;object-position:50% 36%}.profile h2{font-size:23px;margin-bottom:26px}.profile-lead{font-family:var(--serif);font-size:30px;line-height:1.8;margin-bottom:20px}.profile p:not(.profile-lead){color:var(--muted);font-size:15px}.text-link{display:inline-block;color:var(--blue);margin-top:24px;font-size:14px}.sessions{padding-block:100px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:42px}.section-heading p{color:var(--muted);font-size:14px}.session-options{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line)}.session-option{padding:34px 40px 34px 0;display:flex;flex-direction:column;align-items:start;scroll-margin-top:25px}.session-option.trial{border-left:1px solid var(--line);padding-left:40px;padding-right:0}.session-heading>span{color:var(--muted);font-size:13px}.session-heading h3{font-size:26px;color:var(--blue);margin-top:8px}.session-price{display:flex;gap:30px;align-items:baseline;margin:20px 0}.session-price>strong{font-size:44px;font-weight:500;line-height:1.4;color:var(--blue)}.session-price>strong>span{font-size:20px;margin-left:3px}.session-price>span{font-size:23px;font-weight:500}.session-price small{font-size:12px;font-weight:400}.session-option>p:not(.session-price){font-size:14px;color:var(--muted);line-height:2;margin-bottom:25px}.session-option>.button{margin-top:auto;min-width:240px}.booking-note{font-size:13px;line-height:1.9;color:var(--muted);margin-top:24px}.continuing{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding-top:50px;margin-top:45px;border-top:1px solid var(--line)}.continuing h3{font-size:23px;color:var(--blue)}.continuing p{font-size:14px;color:var(--muted)}.continuing p.continuing-summary{font-size:20px;color:var(--ink);margin-bottom:14px}.continuing p+p{margin-top:12px}.method-note{font-size:13px;color:var(--muted);margin-top:35px}.faq-band{background:var(--pale);padding:90px 0}.faq-layout{display:grid;grid-template-columns:1fr 2fr;gap:9%}.faq-layout>div>p{color:var(--muted);font-size:14px;margin-top:20px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{position:relative;list-style:none;cursor:pointer;padding:24px 35px 24px 0;font-size:15px;font-weight:500;line-height:1.8}summary::-webkit-details-marker{display:none}summary:after{content:"＋";position:absolute;right:0;top:24px;color:var(--blue);font-size:20px;line-height:1.3}details[open] summary:after{content:"−"}details p{color:var(--muted);font-size:14px;line-height:2;padding:0 25px 25px 0}.closing{padding-block:100px;text-align:center}.closing h2{font-size:clamp(27px,3.2vw,40px);color:var(--blue);line-height:1.8}.closing>p{font-size:15px;color:var(--muted);margin:25px 0 30px}.closing .button{min-width:270px}.social{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;font-size:12px;margin-top:48px;color:var(--muted)}.social a{color:var(--blue)}.site-footer{border-top:1px solid var(--line);padding-block:28px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.site-footer>a:not(.brand){font-size:12px;color:var(--muted)}.site-footer small{font-size:11px;color:var(--muted)}.mobile-break{display:none}.simple-page{max-width:720px;padding-block:70px 100px}.simple-page h1{font-size:32px;color:var(--blue);margin-bottom:25px}.simple-page p{color:var(--muted)}.simple-page .button{margin-top:28px}.simple-page .text-link{display:block;margin-top:38px;font-size:13px}.simple-page h2{font-family:var(--sans);font-size:20px;margin:45px 0 15px}
@media(min-width:1450px){.hero{padding-block:80px 100px}}
@media(max-width:1050px){.site-header{padding-inline:28px;gap:18px}nav{gap:16px;font-size:12px}.brand{gap:10px}.brand span{font-size:11px}.hero-copy h1{font-size:clamp(29px,3.4vw,38px)}.hero-photo img{height:500px}.wrap{width:calc(100% - 64px)}}
@media(max-width:820px){nav{display:none}.hero{gap:5%}.hero-copy h1{font-size:29px}.hero-copy>p{font-size:14px}.hero-photo img{height:430px}.brand span{font-size:11px}.topics-grid{gap:8%;grid-template-columns:1fr 1.4fr}.topics-grid h2{font-size:27px}.topic-list p{font-size:16px}.section-intro{gap:7%}.process{gap:24px}.session-option{padding-right:25px}.session-option.trial{padding-left:25px}.session-option>.button{min-width:0;width:100%;padding-inline:18px}.session-price{gap:18px}.session-price>span{font-size:19px}.faq-layout{gap:7%;grid-template-columns:1fr 1.8fr}.profile{gap:8%}.profile-lead{font-size:26px}}
@media(max-width:640px){html{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}.site-header{padding:16px 20px;min-height:80px;gap:10px}.brand{display:block}.brand strong{display:block;font-size:23px;line-height:1.4}.brand span{display:block;font-size:10px;line-height:1.5;letter-spacing:0}.header-contact{font-size:12px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-block:40px 54px;gap:35px}.hero-copy h1{font-size:clamp(23px,6.2vw,34px);line-height:1.85;margin-bottom:20px;white-space:normal;letter-spacing:0}.hero-copy>p{font-size:14px;line-height:2.1;margin-bottom:24px}.desktop-break{display:none}.hero-copy .button{font-size:14px;min-width:260px;padding:15px 22px}.hero-note{font-size:11px;max-width:290px}.hero-photo{width:84%;margin-left:auto;padding:0 14px 14px 0}.hero-photo img{height:340px;object-position:50% 40%}.topics-band{padding:48px 0}.topics-grid{display:block}.topics-grid h2{font-size:25px;line-height:1.7;margin-bottom:28px}.topics-grid h2 br:nth-of-type(1){display:none}.topic-list p{font-size:16px;gap:18px;padding:18px 0}.topic-list span{font-size:14px}.mobile-break{display:block}.topic-list .mobile-break{display:none}.dialogue{padding-block:60px}.section-intro{display:block}.section-intro h2{margin-bottom:25px}.section-intro p{font-size:14px}.process{display:block;padding-top:35px}.process li{position:relative;padding:20px 0 22px 48px}.process span{position:absolute;left:0;top:25px;font-size:18px}.process h3{font-size:17px;margin:0 0 8px}.process p{font-size:13px}.profile-band{padding:50px 0}.profile{display:flex;flex-direction:column;gap:30px;align-items:start}.profile>img{width:76%;height:370px;object-position:50% 35%}.profile h2{font-size:21px;margin-bottom:20px}.profile-lead{font-size:25px}.profile p:not(.profile-lead){font-size:14px}.sessions{padding-block:60px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:27px}.section-heading h2 .mobile-break{display:none}.section-heading p{margin-top:18px;font-size:13px}.session-options{display:block;border-bottom:0}.session-option,.session-option.trial{padding:28px 0 30px;border:0;border-bottom:1px solid var(--line)}.session-heading h3{font-size:24px}.session-price{margin:17px 0;gap:28px}.session-price>strong{font-size:40px}.session-price>span{font-size:23px}.session-price small{font-size:12px}.session-option>.button{max-width:340px}.booking-note{font-size:12px;margin-top:22px}.continuing{display:block;padding-top:32px;margin-top:28px}.continuing h3{font-size:22px;margin-bottom:18px}.continuing p.continuing-summary{font-size:18px}.continuing p{font-size:14px}.method-note{font-size:12px;margin-top:25px}.faq-band{padding:55px 0}.faq-layout{display:block}.faq-layout h2{font-size:27px}.faq-layout>div>p{font-size:13px;margin:15px 0 25px}.faq-layout>div>p br{display:none}summary{font-size:14px;padding-block:22px;line-height:1.8}summary:after{top:23px;font-size:18px}details p{font-size:13px;padding-right:12px}.closing{padding-block:60px}.closing h2{font-size:clamp(23px,6.3vw,31px);line-height:1.85;letter-spacing:0}.closing>p{font-size:14px;margin-block:20px 25px}.social{display:block;margin-top:35px;font-size:12px}.social span{display:block;margin-bottom:10px}.social a{display:inline-block;margin-inline:10px}.social a span{display:inline}.site-footer{display:block;padding-block:25px}.site-footer>a:not(.brand){display:block;margin:20px 0}.site-footer small{display:block}.simple-page{padding-block:45px 60px}.simple-page h1{font-size:27px}.simple-page p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Role-first identity and question-led explanation. */
.section-intro h2{font-size:clamp(27px,2.8vw,38px);letter-spacing:.015em}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;line-height:1.4}.brand span{font-size:14px;color:var(--blue);letter-spacing:.025em}.brand strong{font-size:26px;line-height:1.45}.question-example{margin-top:40px;padding:30px 32px;background:var(--pale);border-left:3px solid var(--bright)}.example-label{font-size:13px;color:var(--muted);margin-bottom:18px}.example-pair{display:grid;grid-template-columns:1fr auto 1.2fr;gap:25px;align-items:center}.example-pair p{font-family:var(--serif);font-size:20px;line-height:1.85;color:var(--blue);margin:0}.example-pair>span{color:var(--bright);font-size:22px}.example-note{font-size:12px;color:var(--muted);line-height:1.9;margin-top:20px}.continuing p.continuing-summary{line-height:1.8}
@media(max-width:820px){.brand span{font-size:12.5px}.example-pair{gap:15px}.example-pair p{font-size:18px}}
@media(max-width:640px){.brand{gap:2px}.brand span{font-size:12px;letter-spacing:0;line-height:1.4}.brand strong{font-size:24px;line-height:1.4}.question-example{margin-top:28px;padding:24px 20px}.example-pair{display:block}.example-pair p{font-size:19px}.example-pair>span{display:block;transform:rotate(90deg);width:25px;margin:8px 0 10px}.example-note{font-size:12px}.hero-copy>p{max-width:34em}}

/* Make the role legible before the name; keep paired questions together. */
.site-header .brand span{font-size:18px;font-weight:700;letter-spacing:.025em;line-height:1.5}
.site-header .brand strong{font-size:22px;font-weight:500;line-height:1.5}
.hero-copy .button.secondary{background:transparent}
.example-pair{grid-template-columns:1fr auto 1.35fr;align-items:start}
.example-pair>span{align-self:center}
.example-questions p+p{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
@media(max-width:1050px){.site-header .brand span{font-size:16px}.site-header{gap:20px}}
@media(max-width:640px){.site-header .brand span{font-size:14px;letter-spacing:0}.site-header .brand strong{font-size:21px}.hero-note{max-width:none}.example-questions p+p{margin-top:16px;padding-top:16px}}

/* Approved profile and aligned question example. */
.hero-result{display:inline-block}
.profile-evidence{margin:20px 0;padding-left:1.2em;font-size:15px;line-height:1.95;color:var(--muted)}
.profile-evidence+p{margin-top:20px}
.question-break{display:none}
@media(min-width:641px){.example-pair>p{align-self:center;text-align:left}}
@media(min-width:1051px){.question-break{display:inline}}
@media(min-width:641px) and (max-width:820px){
  .example-pair{display:block}
  .example-pair>span{display:block;transform:rotate(90deg);width:25px;margin:12px auto}
  .process{display:block;padding-top:35px}
  .process li{position:relative;padding:20px 0 22px 48px}
  .process span{position:absolute;left:0;top:25px;font-size:18px}
  .process h3{font-size:18px;margin:0 0 8px}
}
@media(max-width:640px){.profile-evidence{font-size:14px}}
@media(max-width:640px){
  .hero-copy h1{font-weight:700}
  .example-pair>span{margin-inline:auto}
  .profile>img{margin-inline:auto}
  .header-contact{display:inline-flex;align-items:center;min-height:44px;padding-block:0;border-bottom:0;text-decoration:underline;text-underline-offset:7px}
}

/* Readable body copy for visitors on phones. */
@media(max-width:640px){
  .hero-copy>p,.section-intro p,.process p,.profile p:not(.profile-lead),
  .profile-evidence,.section-heading p,.session-option>p:not(.session-price),
  .continuing p:not(.continuing-summary),.faq-layout>div>p,details p,
  .closing>p,.simple-page p{font-size:16px;line-height:1.95}
  .hero-note,.example-label,.example-note,.booking-note,.method-note,.social{font-size:14px;line-height:1.9}
  .hero-copy .button,.button,summary,.text-link{font-size:16px}
  .session-heading>span{font-size:14px}
}

/* Service disclosures, with readable copy on phones. */
.site-footer .footer-links{display:flex;flex:1 1 580px;justify-content:flex-end;flex-wrap:wrap;gap:12px 24px;font-size:13px;line-height:1.8;color:var(--muted)}
.legal-page{max-width:880px;padding-block:55px 80px}
.legal-page h1{font-size:32px;color:var(--blue);margin-bottom:28px}
.legal-page h2{font-family:var(--sans);font-size:21px;line-height:1.7;margin:34px 0 12px;color:var(--blue)}
.legal-page p,.legal-page dd,.legal-page li{font-size:16px;line-height:1.95}
.legal-page p{color:var(--muted)}
.legal-page a{color:var(--blue)}
.legal-page ul{padding-left:1.3em}
.legal-page .legal-nav{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:30px;font-size:14px}
.legal-nav a{text-decoration:underline;text-underline-offset:5px}
.legal-nav a[aria-current="page"]{font-weight:700}
.legal-page dl{margin:24px 0}
.legal-page dl>div{display:grid;grid-template-columns:185px minmax(0,1fr);gap:28px;border-top:1px solid var(--line);padding:24px 0}
.legal-page dt{font-weight:700}
.legal-page dd{margin:0;color:var(--muted)}
.legal-page dd p+p{margin-top:14px}
.legal-page .updated{margin-top:35px;font-size:14px}
@media(max-width:640px){
  .site-footer .footer-links{justify-content:flex-start;gap:0;margin-block:18px}
  .site-footer .footer-links a{display:flex;align-items:center;min-height:44px;width:100%;font-size:14px}
  .legal-page{padding-block:35px 55px}
  .legal-page h1{font-size:26px;line-height:1.65}
  .legal-page h2{font-size:20px}
  .legal-page dl>div{display:block;padding-block:22px}
  .legal-page dt{margin-bottom:10px}
}
