.rop-page main>.product-hero{padding-bottom:52px}
.rop-page main>.product-hero h1{font-size:clamp(48px,5.6vw,76px);line-height:1.04;max-width:790px}
.rop-page main>.product-hero .lead{max-width:720px}

.rop-page .rop-fit-section{padding-top:64px;padding-bottom:76px}
.rop-page .rop-fit-section .section-head{margin-bottom:28px}
.rop-page .rop-fit-section .section-head .prose{margin-bottom:0}
.rop-page .rop-fit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rop-page .rop-fit-grid>div{min-height:0;height:100%;padding:22px;border:1px solid var(--line);transition:opacity .65s ease,transform .65s ease,box-shadow .2s,border-color .2s}
.rop-page .rop-fit-number{display:block;margin-bottom:24px;color:var(--accent-dark);font-size:12px;font-weight:800;letter-spacing:.12em}
.rop-page .rop-fit-grid h3{font-size:22px;line-height:1.18}
.rop-page .rop-fit-grid p{font-size:14px;line-height:1.58}

.rop-page .rop-scope-section{background:var(--bg)}
.rop-page .rop-scope-section .section-head{max-width:900px}
.rop-page .rop-scope-section .section-head .prose{max-width:780px}
.rop-page .rop-scope-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rop-page .rop-scope-grid>div{height:100%;border:1px solid var(--line);padding:22px;transition:opacity .65s ease,transform .65s ease,box-shadow .2s,border-color .2s}
.rop-page .rop-scope-grid h3{font-size:21px}
.rop-page .rop-section-note{max-width:820px;margin:24px 0 0;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:15px;line-height:1.6}

.rop-page .rop-start-section .section-head{margin-bottom:30px}
.rop-page .rop-start-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.rop-page .rop-start-grid>div{height:100%;padding:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);transition:opacity .65s ease,transform .65s ease,box-shadow .2s,border-color .2s}
.rop-page .rop-start-grid h3{font-size:22px;color:#f8f6ef}
.rop-page .rop-start-grid p{font-size:14px;line-height:1.62;color:#c2cbc6}
.rop-page .rop-start-footer{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start;margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14)}
.rop-page .rop-start-footer .note-inline{margin:0}
.rop-page .service-crosslink.system-related-service.rop-audit-crosslink{margin:0;border-color:rgba(255,255,255,.16)}
.rop-page .service-crosslink.system-related-service.rop-audit-crosslink span{color:#f8f6ef}
.rop-page .service-crosslink.system-related-service.rop-audit-crosslink p{max-width:720px;margin:6px 0 0;color:#c2cbc6;font-size:14px;line-height:1.55}
.rop-page .service-crosslink.system-related-service.rop-audit-crosslink a{border-color:rgba(255,255,255,.28);color:#f8f6ef}
.rop-page .service-crosslink.system-related-service.rop-audit-crosslink a:hover{background:var(--accent);border-color:var(--accent);color:var(--text)}

.rop-page .rop-boundary-section .service-section-grid{grid-template-columns:.9fr 1.1fr;gap:64px}
.rop-page .rop-boundary-section .note-inline{margin-top:24px}
.rop-page .rop-boundary-section .note-inline{display:block;width:100%;max-width:340px}
.rop-page .rop-boundary-copy .prose{margin:0 0 16px}

.rop-page .rop-management-section{background:var(--bg)}
.rop-page .rop-management-grid{display:grid;grid-template-columns:1fr .9fr;gap:58px;align-items:start}
.rop-page .rop-management-grid .prose{max-width:680px}
.rop-page .rop-team-case{background:var(--surface-2)}
.rop-page .rop-case{box-shadow:none;border:1px solid var(--line);padding:28px;transition:opacity .65s ease,transform .65s ease,box-shadow .2s,border-color .2s}
.rop-page .rop-case h3{font-size:28px;margin:10px 0 18px}
.rop-page .rop-case p{color:var(--muted);font-size:15px;line-height:1.65}
.rop-page .rop-case-result{margin-top:20px!important;padding-top:18px;border-top:1px solid var(--line);color:var(--text)!important;font-weight:800}

.rop-page .rop-manager-case-section .service-section-grid{align-items:center}

.rop-page .rop-pricing-section{padding-top:72px;padding-bottom:72px;background:var(--bg)}
.rop-page .pricing-summary{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);grid-template-areas:"title main" "explanation term" ". extra";column-gap:clamp(54px,8vw,110px);row-gap:22px;align-items:start}
.rop-page .pricing-summary-title{grid-area:title;max-width:650px}
.rop-page .pricing-main{grid-area:main;display:flex;align-items:baseline;gap:12px;min-width:0;padding:24px 28px;border-radius:22px;background:#fff;box-shadow:9px 9px 0 color-mix(in srgb,var(--accent) 38%,transparent);white-space:nowrap;color:var(--text)}
.rop-page .pricing-main strong{font-size:clamp(46px,5.2vw,66px);line-height:1;letter-spacing:-.06em}
.rop-page .pricing-main strong span{font:inherit}
.rop-page .pricing-main>span{font-size:24px;font-weight:800;line-height:1.1}
.rop-page .pricing-term{grid-area:term;margin:0;padding-top:18px;border-top:1px solid var(--line);font-size:18px;line-height:1.45;color:var(--muted)}
.rop-page .pricing-explanation{grid-area:explanation;max-width:570px;margin:0;color:var(--muted);font-size:17px;line-height:1.65}
.rop-page .pricing-extra{grid-area:extra;margin:2px 0 0;padding-top:17px;border-top:1px solid var(--line);color:var(--muted);font-size:13.5px;line-height:1.55}

.rop-page .seo-faq .faq-item{background:#fff;border-color:var(--line)}
.rop-page .seo-faq .faq-item p{max-width:900px;color:var(--muted)}
.rop-page .rop-final-cta{padding-top:78px;padding-bottom:78px}
.rop-page .rop-final-cta-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:54px;align-items:center}
.rop-page .rop-final-cta h2{max-width:850px;color:#f8f6ef}
.rop-page .rop-final-cta .button-primary{min-height:52px;padding:0 24px;background:var(--accent);color:var(--text);white-space:nowrap}
.rop-page .rop-final-cta .button-primary:hover{background:#c3f681;transform:translateY(-2px)}

@media(hover:hover) and (pointer:fine){
  .rop-page .rop-fit-grid>div:hover,
  .rop-page .rop-scope-grid>div:hover,
  .rop-page .rop-start-grid>div:hover,
  .rop-page .rop-case:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:#d7d8d3}
}

@media(max-width:980px){
  .rop-page .rop-boundary-section .service-section-grid{grid-template-columns:1fr}
  .rop-page .rop-fit-grid,
  .rop-page .rop-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rop-page .rop-start-footer{grid-template-columns:1fr;gap:22px}
  .rop-page .rop-management-grid{grid-template-columns:1fr;gap:32px}
  .rop-page .rop-final-cta-grid{grid-template-columns:1fr;gap:28px}
  .rop-page .rop-final-cta .button-primary{justify-self:start}
}

@media(max-width:820px){
  .rop-page .rop-pricing-section{padding-top:46px;padding-bottom:46px}
  .rop-page .pricing-summary{grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "main" "term" "explanation" "extra";gap:20px}
  .rop-page .pricing-main{gap:8px}
  .rop-page .pricing-main strong{font-size:clamp(34px,10vw,44px)}
  .rop-page .pricing-main>span{font-size:20px}
  .rop-page .pricing-term{padding-top:16px;font-size:17px}
  .rop-page .pricing-explanation{font-size:15px;line-height:1.6}
  .rop-page .pricing-extra{font-size:13px}
}

@media(max-width:640px){
  .rop-page .section{padding-top:54px;padding-bottom:54px}
  .rop-page .rop-pricing-section{padding-top:46px;padding-bottom:46px}
  .rop-page .note-inline{width:min(100%,340px)}
  .rop-page main>.product-hero{padding-top:46px;padding-bottom:38px}
  .rop-page main>.product-hero h1{font-size:clamp(37px,11vw,48px)}
  .rop-page .rop-fit-section{padding-top:42px;padding-bottom:48px}
  .rop-page .rop-fit-section .section-head,
  .rop-page .section-head{margin-bottom:22px}
  .rop-page .rop-fit-grid,
  .rop-page .rop-scope-grid,
  .rop-page .rop-start-grid{grid-template-columns:1fr;gap:10px}
  .rop-page .rop-fit-grid>div,
  .rop-page .rop-scope-grid>div,
  .rop-page .rop-start-grid>div{height:auto;padding:18px}
  .rop-page .rop-fit-number{margin-bottom:16px}
  .rop-page .rop-start-footer{margin-top:22px;padding-top:20px}
  .rop-page .rop-start-footer .note-inline{max-width:100%}
  .rop-page .rop-boundary-section .service-section-grid{gap:24px}
  .rop-page .rop-boundary-section .note-inline{margin-top:20px}
  .rop-page .rop-boundary-copy .prose{font-size:16px;line-height:1.6}
  .rop-page .rop-highlight{margin-top:18px;padding:14px 15px}
  .rop-page .rop-management-grid{gap:24px}
  .rop-page .rop-case{padding:20px}
  .rop-page .rop-case h3{font-size:24px}
  .rop-page .rop-final-cta{padding-top:54px;padding-bottom:54px}
  .rop-page .rop-final-cta-grid{gap:22px}
  .rop-page .rop-final-cta .button-primary{width:100%}
}

.rop-page .nav-wrap{min-height:78px;gap:30px}
.rop-page .brand-lockup{flex-direction:row;align-items:center;gap:9px;min-width:218px}
.rop-page .brand-mark{position:relative;display:block;width:54px;height:48px;flex:0 0 54px;overflow:hidden}
.rop-page .brand-mark img{position:absolute;display:block;width:141px;max-width:none;height:auto;left:-42px;top:-9px;object-fit:initial;mix-blend-mode:multiply}
.rop-page .brand-wording{display:flex;flex-direction:column;gap:5px;line-height:normal}
.rop-page .brand-lockup .brand-wording strong{font-size:25px;line-height:.9;letter-spacing:.08em;color:var(--text)}
.rop-page .brand-lockup .brand-wording small{font-size:7px;line-height:1;letter-spacing:.075em;white-space:nowrap;color:#55645e}
.rop-page .brand-wording small b{color:var(--accent-dark)}
@media(max-width:640px){
  .rop-page .nav-wrap{min-height:70px}
  .rop-page .brand-lockup{min-width:142px;gap:7px}
  .rop-page .brand-mark{width:42px;height:38px;flex-basis:42px}
  .rop-page .brand-mark img{width:110px;left:-33px;top:-7px}
  .rop-page .brand-lockup .brand-wording strong{font-size:21px}
  .rop-page .brand-lockup .brand-wording small{display:none}
}
