@charset "UTF-8";
/* Research-led redesign, 2026-09-25. Foundation tokens apply to every route. */
:root{--navy:#083b50;--ink:#13333f;--muted:#52636a;--orange:#aa4614;--teal:#326c70;--pale:#f1f4f2;--line:#cdd6d4;--paper:#fff;--radius:12px;--shadow:0 16px 40px #153d4810;--warm:#f7f5ef}
html{scroll-padding-top:120px;scroll-behavior:auto}
body{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;font-size:17px;line-height:1.8;color:var(--ink)}
h1,h2,h3{font-weight:700;letter-spacing:.015em;line-height:1.5;overflow-wrap:normal}
p{overflow-wrap:normal}
.shell{width:min(1184px,calc(100% - 80px))}
.narrow{max-width:760px}
.section{padding:88px 0}
.section h2{font-size:clamp(28px,2.7vw,38px);line-height:1.5}
.section-kicker{font-size:14px;color:var(--teal);letter-spacing:.1em;margin:0 0 16px;font-weight:650}
.eyebrow{font-size:14px;letter-spacing:.06em;color:var(--teal);margin-bottom:24px}
.eyebrow:before{height:3px;width:22px;background:#e77630}
.preview-bar{background:#eaf0ee;font-size:14px;color:#405c64}
.preview-bar .shell{padding:5px 0;min-height:38px}
.preview-bar a{padding:3px 0;font-size:14px}
.site-header{background:#fff;backdrop-filter:none;border-bottom:1px solid #dde4e1}
.header-inner{min-height:98px;gap:24px}
.brand{width:176px}
.site-header nav{gap:27px;font-size:15px}
.site-header nav>a:not(.button){padding:14px 0}
.site-header nav>a[aria-current]:after{transform:scaleX(1)}
.button{border-radius:6px;font-size:16px;padding:17px 23px;min-height:56px;gap:24px;line-height:1.5;font-weight:700;box-shadow:none;transition:background .15s}
.button:hover{transform:none;background:#1d596b}
.button.compact{font-size:15px;min-height:46px;padding:12px 19px}
.button.secondary{border-color:#78929b;background:#fff}
.button.light:hover{background:#edf3f1}
.button>span{font-size:21px}
.text-link{font-size:16px;line-height:1.6;min-height:44px;gap:16px;border-bottom:1px solid currentColor;padding:9px 0}
.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.text-link span{color:var(--orange);flex-shrink:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ad4919;outline-offset:4px}
.skip-link{left:16px;box-shadow:0 0 0 3px var(--navy);color:var(--navy)}
.home-hero{background:var(--warm);padding:64px 0 66px;border-bottom:1px solid #e5e6df}
.home-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:52px;align-items:center}
.home-hero-copy h1{font-size:clamp(36px,3.25vw,49px);line-height:1.55;letter-spacing:.01em;margin-bottom:24px}
.home-hero-copy h1>span{color:var(--navy)}
.home-intro{font-size:17px;line-height:1.9;color:#455d63;margin-bottom:24px}
.hero-topics{display:flex;flex-wrap:wrap;gap:6px 16px}
.hero-topics a{font-size:14px;line-height:1.8;padding:7px 0;color:var(--navy);border-bottom:1px solid #91a7aa}
.hero-topics a:hover{border-color:var(--orange);color:var(--orange)}
.home-hero .actions{align-items:center;gap:12px 24px;margin-top:25px}
.home-hero .actions .text-link{font-size:14px;gap:12px}
.home-hero-visual{min-width:0}
.visual-label{font-size:15px;display:flex;align-items:center;gap:8px;margin-bottom:13px;font-weight:700;color:var(--navy)}
.accent-dot{display:inline-block;background:#e87531;width:9px;height:9px;border-radius:50%}
.home-hero-visual figure{margin:0;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 12px 36px #123f4c13;border:1px solid #dce1db}
.home-hero-visual figcaption{padding:22px 25px;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:start}
.home-hero-visual figcaption strong{font-size:19px;grid-column:1/-1;line-height:1.6}
.home-hero-visual figcaption>span{font-size:15px;color:var(--muted);padding-top:4px}
.home-hero-visual figcaption .artwork-caption-link{font-size:14px;margin-top:0}
.visual-footnote{font-size:14px;color:#536269;margin:13px 0 0;line-height:1.7}
.section-top{margin-bottom:40px;gap:36px}
.section-top p{font-size:16px;max-width:450px;line-height:1.85}
.section-top .section-kicker{font-size:14px;line-height:1.5;margin-bottom:16px}
.section-top h2{margin:0}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.service-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.service-card-head{display:flex;gap:14px;align-items:center;margin:25px 24px 14px;color:var(--teal);font-size:12px;letter-spacing:.06em}
.service-index{font:500 26px/1 system-ui;color:var(--orange);letter-spacing:0}
.service-card .service-card-title{font-size:21px;line-height:1.5;margin:0 24px 10px;min-height:63px;display:flex;align-items:center}
.service-one-line{font-size:15px;color:var(--muted);margin:0 24px 22px}
.service-card .service-photo{border:0;border-radius:0;margin:0 16px;background:white}
.service-card .service-photo .service-image{overflow:hidden;border-radius:7px}
.service-card .service-photo .artwork-caption{padding:7px 0 0;justify-content:flex-end;background:transparent;gap:0}
.service-card .artwork-caption>span{display:none}
.artwork-caption-link{font-size:14px;color:var(--navy);padding:7px 0;min-height:38px}
.service-card .artwork-caption-link{font-size:14px}
.service-card-body{padding:8px 24px 25px;display:flex;flex-direction:column;flex:1}
.example-label{font-size:14px;color:var(--teal);font-weight:700;margin:0 0 6px}
.example-question{font-size:18px;font-weight:700;line-height:1.7;margin:0 0 15px;min-height:62px}
.service-card-body>p:not(.example-label):not(.example-question){font-size:15px;color:var(--muted);line-height:1.85;margin-bottom:20px}
.service-card-body .text-link{font-size:14px;margin-top:auto;gap:10px}
.approach-section{background:var(--navy);color:#fff}
.approach-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:start}
.approach-section .section-kicker{color:#b4d5d4}
.approach-section h2{margin-bottom:25px}
.approach-lead{color:#dae5e5;font-size:16px;line-height:1.9}
.approach-section .text-link{color:#fff;font-size:15px}
.approach-section .text-link span{color:#ffb586}
.approach-list article{display:grid;grid-template-columns:32px 1fr;gap:17px;border-top:1px solid #60818b;padding:26px 0}
.approach-list article:last-child{padding-bottom:0}
.approach-list article>span{font:500 17px/1.8 system-ui;color:#ffc19a}
.approach-list h3{font-size:22px;margin-bottom:10px}
.approach-list p{font-size:16px;color:#d5e4e5;margin-bottom:0}
.approach-list .text-link{margin-top:12px}
.process{gap:24px;margin-top:32px}
.process>div{padding:22px 0 0;border-left:0;border-top:2px solid #9dafb0}
.process b{font:500 29px/1 system-ui;color:var(--teal);margin-bottom:22px}
.process h3{font-size:19px;margin-bottom:12px}
.process p{font-size:16px;line-height:1.8}
.process-note{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--warm);padding:24px 28px;margin-top:28px;border-radius:8px}
.process-note p{font-size:15px;color:var(--muted);margin:0}
.process-note .text-link{font-size:14px;flex-shrink:0}
.cta-band{background:#e7efed;color:var(--navy);padding:66px 0;border-top:1px solid #cbd9d4}
.cta-band h2{font-size:clamp(26px,2.6vw,37px);line-height:1.6}
.cta-band p{color:#425e67;font-size:16px}
.cta-band .button{background:var(--navy);color:#fff;border-color:var(--navy)}
.cta-band .button:hover{background:#1d596b}
.site-footer{padding-top:44px}
.footer-top{grid-template-columns:.8fr 1.7fr;gap:58px;margin-bottom:35px}
.footer-brand{width:196px}
.footer-top p{font-size:14px}
.footer-columns{gap:26px}
.footer-columns b{font-size:15px;margin-bottom:14px}
.footer-columns a{font-size:14px;line-height:1.75;min-height:32px;padding:4px 0;margin:0 0 4px}
.footer-bottom{font-size:14px;line-height:1.8}
.breadcrumbs{font-size:14px;padding-top:26px;line-height:1.8}
.breadcrumbs a{display:inline-block;padding:6px 0;min-height:36px;text-underline-offset:4px}
.page-head{padding:43px 0 64px}
.page-head h1{font-size:clamp(32px,3.6vw,50px);line-height:1.5;margin-bottom:24px}
.page-head .lead{font-size:18px;line-height:1.9;max-width:40em}
.page-head.split{gap:50px;grid-template-columns:1fr 1fr}
.page-head.split .eyebrow{font-size:15px}
.page-head.split .button{margin-top:12px}
.page-head.split .service-photo{box-shadow:var(--shadow)}
.page-head.split .artwork-caption{font-size:14px}
.page-head.split .artwork-caption-link{font-size:14px}
.split-content{gap:72px;grid-template-columns:.7fr 1.4fr}
.split-content>h2{font-size:30px}
.detail-grid{gap:24px;margin-top:32px}
.detail-card{padding:30px;border-radius:10px;border-color:var(--line)}
.detail-card h3{font-size:21px;margin-bottom:15px}
.detail-card p{font-size:17px;line-height:1.85}
.tags span,.list-lines small{font-size:16px;line-height:1.85}
.list-lines li{padding:24px 0}
.list-lines strong{font-size:18px;margin-bottom:6px}
.note{font-size:14px;line-height:1.8}
.callout{background:#ecf1ee;border-color:var(--teal);font-size:16px;padding:24px;margin:28px 0;line-height:1.85}
.callout.warn{background:#fff3e8}
.price-row{gap:32px;padding:32px 0;grid-template-columns:1fr 1.6fr 1fr}
.price-row h3{font-size:21px;line-height:1.65}
.price-row p{font-size:16px;line-height:1.85}
.price-label{font-size:18px;line-height:1.6}
.price-label small{font-size:14px;margin-top:8px}
.faq-list{margin-top:30px}
summary{font-size:17px;padding:24px 38px 24px 0}
details p{font-size:16px;line-height:1.9}
.info-table th{font-size:16px}
.info-table td{font-size:17px}
.knowledge-flow>div{padding:28px}
.knowledge-flow h3{font-size:23px}
.knowledge-flow p{font-size:16px}
.knowledge-flow span{font-size:14px}
.timeline p{font-size:17px}
.form-layout{grid-template-columns:250px minmax(0,1fr);gap:72px}
.form-aside{top:120px}
.form-aside h2{font-size:32px}
.form-aside p,.check-list li{font-size:16px}
.demo-note{font-size:15px;padding:20px;line-height:1.8}
.form-steps li{font-size:15px;color:#536970}
.form-steps span{font-size:14px}
legend{font-size:23px}
legend>span{font-size:17px}
.field>label,.field-label{font-size:17px}
.required,.optional{font-size:14px}
.field-help,.field-error{font-size:14px;line-height:1.8}
.choice{font-size:16px;padding:15px 16px;min-height:56px}
.choice-grid{gap:12px}
.check-row{font-size:16px;line-height:1.8;min-height:32px}
input:not([type=radio]):not([type=checkbox]):not([type=file]),select,textarea{border-color:#78929b;border-radius:5px;min-height:52px;font-size:17px}
input::placeholder,textarea::placeholder{color:#627179;font-size:16px}
.date-row>span,.date-row input,.date-row select{font-size:16px!important}
.upload-box{padding:24px}
.upload-box>small{font-size:14px}
.small-button{min-height:44px;font-size:14px;padding:10px 14px;border-color:#7e969d}
.review-data>div{font-size:17px}
.review-data dt{font-size:16px}
.review-data dd>small{font-size:14px}
.error-summary{font-size:16px;border-left-width:4px;padding:22px;background:#fff1ec}
.error-summary a,.error-summary button{color:#842d22;text-decoration:underline;text-underline-offset:3px}
.error-summary ul{margin-bottom:0}
.error-summary li{padding:5px 0}
.error-summary:focus{outline:3px solid #9f3c22;outline-offset:4px}
.receipt-card p{font-size:16px}
.badge{font-size:14px}
.admin-banner{padding:32px 0;background:var(--pale)}
.admin-banner p,.admin-nav a{font-size:16px}
.admin-nav span,.stat-grid small,.filters label{font-size:14px}
.stat-grid span{font-size:16px}
.filters select{font-size:16px}
.case-row p,.case-side>small,.topic-label,.case-meta{font-size:14px}
.admin-panel .review-data>div{font-size:16px}
.admin-panel .review-data dt,.admin-panel .callout{font-size:15px}
.admin-panel .field label,.admin-panel .field-label{font-size:16px}
.history-list small,.calendar-legend,.calendar-event small,.calendar-event em,.empty-day{font-size:14px}
.calendar-event b{font-size:16px}
.history-list span{font-size:16px}
.calendar-event>span{font-size:14px}
#artwork-viewer{border-radius:12px}
#artwork-description,.artwork-viewer-footer span,#artwork-pan-hint{font-size:14px}
.artwork-toolbar button,.artwork-viewer-footer button{min-height:44px;font-size:15px}
.artwork-toolbar h2{font-size:20px}
[hidden]{display:none!important}
@media(max-width:1100px){
 .shell{width:calc(100% - 48px)}
 .home-hero-grid{gap:30px}.home-hero-copy h1{font-size:36px}.home-intro{font-size:16px}.desktop-break{display:none}
 .site-header nav{gap:20px;font-size:14px}.site-header .brand{width:155px}
 .service-grid{gap:16px}.service-card .service-card-title{font-size:20px;margin-inline:20px;min-height:60px}.service-card-head,.service-one-line{margin-inline:20px}.service-card-body{padding-inline:20px}
 .service-card .service-photo{margin-inline:12px}.approach-layout{gap:44px}.page-head.split{gap:32px}.form-layout{gap:40px}
}
@media(max-width:850px){
 .header-inner{min-height:86px}.site-header .brand{width:166px}
 .menu-toggle{display:flex;align-items:center;gap:10px;padding:12px 14px;min-height:46px;font-size:14px;border:1px solid #82989e;border-radius:5px;background:white}
 .site-header nav{display:none;position:absolute;inset:100% 0 auto;padding:20px 24px;background:#fff;border-bottom:1px solid var(--line);max-height:calc(100dvh - 86px);overflow:auto;box-shadow:0 20px 30px #07364d0a}
 .site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:8px}
 .site-header nav>a:not(.button){padding:12px 0;font-size:16px}
 .home-hero{padding:40px 0 44px}.home-hero-grid{grid-template-columns:1fr;gap:34px}.home-hero-copy h1{font-size:clamp(34px,5.8vw,48px)}
 .home-hero-visual{max-width:650px}.home-intro{font-size:17px}.hero-topics a{font-size:15px}
 .section{padding:64px 0}.section-top{display:block;margin-bottom:32px}.section-top>p{margin-top:20px}.section-top>.text-link{margin-top:20px}
 .service-grid{grid-template-columns:1fr;gap:28px}.service-card{display:grid;grid-template-columns:.95fr 1.05fr;column-gap:18px;align-items:start;padding:24px}
 .service-card-head{grid-column:1/-1;margin:0 0 14px}.service-card .service-card-title{grid-column:1/-1;min-height:0;margin:0 0 8px;font-size:24px}.service-one-line{grid-column:1/-1;margin:0 0 24px;font-size:16px}
 .service-card .service-photo{margin:0}.service-card-body{padding:0}.example-question{min-height:0;font-size:19px}.service-card-body>p:not(.example-label):not(.example-question){font-size:16px}.service-card-body .text-link{font-size:15px}
 .approach-layout{grid-template-columns:1fr;gap:36px}.approach-lead{font-size:17px}.approach-list h3{font-size:23px}
 .process{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.process-note{display:block}.process-note .text-link{margin-top:14px}
 .cta-band .shell{display:block}.cta-band .button{margin-top:24px}.footer-top{grid-template-columns:1fr;gap:15px}
 .page-head.split{grid-template-columns:1fr;gap:30px}.page-head .lead{font-size:17px}.page-head.split .service-photo{max-width:650px}
 .split-content{grid-template-columns:1fr;gap:26px}.price-row{grid-template-columns:1fr 1.4fr}.price-label{grid-column:2;text-align:left}
 .form-layout{grid-template-columns:1fr;max-width:760px}.form-aside{display:none}.knowledge-flow{flex-direction:column;align-items:stretch}
}
@media(max-width:560px){
 .shell{width:calc(100% - 36px)}body{font-size:16px;line-height:1.85}html{scroll-padding-top:100px}
 .preview-extra{display:none}.preview-bar .shell{font-size:12px;min-height:34px;gap:12px}.preview-bar a{font-size:12px}
 .header-inner{min-height:78px}.site-header .brand{width:145px}.menu-toggle{font-size:14px;padding:10px 12px;min-height:44px}
 .home-hero{padding:32px 0 36px}.home-hero-copy .eyebrow{font-size:13px;letter-spacing:0;margin-bottom:18px;gap:8px}
 .home-hero-copy h1{font-size:clamp(27px,7.4vw,36px);line-height:1.6;margin-bottom:18px;letter-spacing:0}.home-intro{font-size:16px;line-height:1.85;margin-bottom:17px}
 .hero-topics{gap:4px 13px}.hero-topics a{font-size:14px;padding:7px 0}
 .home-hero .actions{margin-top:24px;gap:12px 20px}.home-hero .actions .button{width:100%;justify-content:space-between}.home-hero .actions .text-link{font-size:15px}
 .button{font-size:16px;padding:16px 20px;gap:18px;min-height:54px}.text-link{font-size:15px}
 .visual-label{font-size:14px;margin-bottom:12px}.home-hero-visual figcaption{padding:18px;display:block}.home-hero-visual figcaption strong{font-size:17px;display:block;margin-bottom:6px}.home-hero-visual figcaption>span{font-size:14px;display:block}
 .home-hero-visual figcaption .artwork-caption-link{font-size:14px;margin-top:4px}.visual-footnote{font-size:14px;line-height:1.75}
 .section{padding:52px 0}.section h2{font-size:28px;line-height:1.55}.section-kicker,.section-top .section-kicker{font-size:13px;margin-bottom:12px}
 .section-top{margin-bottom:26px}.section-top>p{font-size:16px}.section-top br{display:none}
 .service-grid{gap:24px}.service-card{display:flex;padding:0}.service-card-head{margin:23px 21px 14px;font-size:12px}.service-card .service-card-title{font-size:22px;margin:0 21px 10px;line-height:1.5;min-height:0}
 .service-one-line{font-size:15px;margin:0 21px 21px}.service-card .service-photo{margin:0 15px}.service-card-body{padding:6px 21px 25px}.example-question{font-size:18px;margin-bottom:12px;min-height:0}.service-card-body>p:not(.example-label):not(.example-question){font-size:16px;margin-bottom:16px}.service-card-body .text-link{font-size:15px;line-height:1.75;gap:12px}
 .approach-layout{gap:30px}.approach-lead{font-size:16px}.approach-lead br{display:none}.approach-list article{grid-template-columns:25px 1fr;gap:12px;padding:25px 0}.approach-list h3{font-size:20px}.approach-list p{font-size:16px}
 .process{grid-template-columns:1fr;gap:6px;margin-top:20px}.process>div{display:grid;grid-template-columns:38px 1fr;gap:0 16px;padding:22px 0 14px;border-top-width:1px}.process b{font-size:25px;grid-row:1/3;line-height:1.4;margin:0}.process h3{font-size:19px;margin:0 0 8px}.process p{font-size:16px;margin:0}.process-note{padding:20px;margin-top:22px}.process-note p{font-size:15px}
 .cta-band{padding:42px 0}.cta-band h2{font-size:26px}.cta-band p{font-size:16px}.cta-band .button{width:100%}
 .footer-top{margin-bottom:25px}.footer-columns{grid-template-columns:1fr;gap:22px;padding-top:10px}.footer-columns>div:last-child{grid-column:auto}.footer-columns b{margin-bottom:8px}.footer-columns a{font-size:15px;min-height:36px}.footer-bottom{font-size:14px;display:block}
 .breadcrumbs{font-size:14px;padding-top:18px}.page-head{padding:30px 0 43px}.page-head h1{font-size:31px;line-height:1.55;margin-bottom:20px}.page-head .lead{font-size:16px;line-height:1.85}.page-head .eyebrow{font-size:13px;margin-bottom:18px}.page-head.split{gap:25px}.page-head.split .eyebrow{font-size:14px}.page-head.split .button{width:100%}
 .page-head.split .artwork-caption{font-size:14px!important;padding:15px 17px}.page-head.split .artwork-caption-link{font-size:14px}
 .split-content>h2{font-size:27px}.detail-grid{grid-template-columns:1fr;gap:16px;margin-top:25px}.detail-card{padding:24px 22px}.detail-card h3{font-size:21px}.detail-card p{font-size:16px}
 .list-lines strong{font-size:17px}.list-lines small{font-size:16px}.callout{font-size:15px;padding:20px;margin:24px 0}.price-row{grid-template-columns:1fr;gap:14px;padding:27px 0}.price-label{grid-column:auto;font-size:18px}.price-label small{font-size:14px}.price-row h3{font-size:21px}.price-row p{font-size:16px}
 summary{font-size:16px;line-height:1.8;padding-right:30px}details p{font-size:16px;padding-right:0}.info-table th,.info-table td{font-size:16px}.knowledge-flow p{font-size:16px}.knowledge-flow h3{font-size:22px}
 .form-steps li{font-size:14px}.form-steps span{font-size:14px}.form-layout{padding-bottom:55px}.form-top>.note{max-width:155px}.form-top .small-button{flex-shrink:0}
 .demo-note{font-size:14px;padding:18px;display:block}.demo-note b{display:block;margin-bottom:5px}.choice-grid{grid-template-columns:1fr;gap:10px}.choice{font-size:16px;padding:14px 16px}.field>label,.field-label{font-size:16px}.field-help,.field-error{font-size:14px}.check-row{font-size:15px}legend{font-size:22px;margin-bottom:23px}
 input:not([type=radio]):not([type=checkbox]):not([type=file]),select,textarea{font-size:16px}.date-row{gap:10px}.date-row>span{font-size:14px!important}.review-data>div{font-size:16px}.review-data dt{font-size:15px}.review-data dd>small{font-size:14px}
 .stat-grid{grid-template-columns:1fr;gap:10px}.stat-grid>div{display:flex;align-items:center;padding:16px 20px}.stat-grid span{font-size:16px}.stat-grid strong{font-size:29px;margin:0}.admin-banner h1{font-size:29px}.admin-banner p{font-size:14px}.admin-nav a{font-size:16px}
 .case-row h3{font-size:21px}.case-meta,.case-side>small,.topic-label{font-size:14px}.case-heading{flex-wrap:wrap}.calendar-buttons{flex-wrap:wrap}.calendar-event small,.calendar-event em,.empty-day{font-size:14px}.day-column{grid-template-columns:65px 1fr;gap:12px}
 .artwork-toolbar{align-items:flex-start}.artwork-toolbar h2{font-size:17px}.artwork-toolbar button{font-size:14px;min-height:44px;padding:9px 11px}#artwork-description{font-size:14px}.artwork-viewer-footer span{font-size:14px}.artwork-viewer-footer{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){html:not([data-motion="full"]) *,html:not([data-motion="full"]) *:before,html:not([data-motion="full"]) *:after{transition:none!important;animation:none!important}}
.date-field{min-width:0}.date-field>label{display:block;font-size:14px;color:var(--muted);margin-bottom:6px}
.error-summary h2{font-size:21px;margin-bottom:10px}.error-summary p{margin-bottom:12px}
@media(min-width:851px) and (max-height:800px){.home-hero{padding-top:38px;padding-bottom:46px}}
.menu-toggle{flex-shrink:0;white-space:nowrap}
.empty-day{color:var(--muted)}
.button.ghost:hover{background:var(--pale);color:var(--navy)}
.image-provenance{font-size:14px;color:var(--muted);line-height:1.7}
.service-card .artwork-caption .image-provenance{margin-right:auto}
.page-head.split .artwork-caption>span{flex-basis:100%}
.page-head:has(+ .form-layout){padding-top:28px;padding-bottom:34px}
.page-head:has(+ .form-layout) h1{font-size:36px;margin-bottom:16px}
.page-head:has(+ .form-layout) .eyebrow{margin-bottom:16px}
@media(max-width:560px){.page-head:has(+ .form-layout){padding-top:20px;padding-bottom:25px}.page-head:has(+ .form-layout) h1{font-size:28px}.page-head:has(+ .form-layout) .lead{margin-bottom:0}}
.approach-section a:focus-visible,.approach-section button:focus-visible{outline-color:#ffd2aa}
@media(max-width:360px){.header-inner{gap:12px}.site-header .brand{width:132px}.menu-toggle{padding-inline:11px}}
