/* style.css */
@charset "UTF-8";
:root{--navy:#122b3d;--navy-deep:#0d2030;--ink:#162c3b;--muted:#52636d;--gold:#e0bd78;--gold-hover:#edcc8e;--line:#dce3e8;--pale:#f2f5f7;--white:#fff;--body-font:"Noto Sans JP","Yu Gothic","Meiryo",sans-serif;--display-font:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;color:var(--ink);background:var(--white);font-family:var(--body-font);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,summary:focus-visible{outline:3px solid #2b80b7;outline-offset:5px}
p,h1,h2,h3{margin:0}
img{display:block;max-width:100%}
svg{display:block}
::selection{background:#e0bd7860}
h2{font-size:clamp(1.8rem,2.9vw,2.65rem);line-height:1.65;letter-spacing:.04em;font-weight:700}
h3{font-size:1.22rem;line-height:1.75;letter-spacing:.01em}
.skip-link{position:fixed;top:-100px;left:16px;z-index:99;padding:12px 20px;background:white}
.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:20;border-bottom:1px solid #e1e7eb;background:rgba(255,255,255,.97)}
.header-inner{max-width:1440px;margin:auto;min-height:90px;padding:12px 4.5%;display:flex;align-items:center;gap:36px}
.brand{display:flex;flex-direction:column;align-items:flex-start;line-height:1;flex-shrink:0}
.brand-word{font-size:2.5rem;font-family:Arial,sans-serif;font-weight:600;letter-spacing:.13em}
.brand-dot{color:#aa7b36;letter-spacing:0}
.brand-sub{font-size:12px;letter-spacing:.16em;margin-top:9px}
.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}
.desktop-nav a{padding:10px 0}
.desktop-nav a:hover{color:#926829}
.button{min-height:60px;display:inline-flex;align-items:center;justify-content:center;padding:17px 28px;border:1px solid transparent;background:var(--navy);color:var(--white);font-size:1rem;font-weight:700;letter-spacing:.025em;text-align:center;line-height:1.6;border-radius:2px;transition:background .2s,box-shadow .2s}
.button:hover{background:#20445d;box-shadow:0 5px 16px #102c3f18}
.button:active{transform:translateY(1px)}
.button-small{min-height:48px;font-size:14px;padding:12px 19px}
.button-gold{background:var(--gold);color:var(--navy-deep)}
.button-gold:hover{background:var(--gold-hover)}
.eyebrow{display:flex;align-items:center;gap:13px;font:600 12px/1.5 Arial,sans-serif;letter-spacing:.17em;color:#6a542f}
.eyebrow-rule{width:29px;height:1px;background:#a98548;flex-shrink:0}
.hero{display:grid;grid-template-columns:1.04fr 1fr;max-width:1600px;margin:auto}
.hero-copy{padding:51px 40px 45px max(5vw,calc((100vw - 1260px)/2));min-width:0}
.hero-audience{font-size:14px;margin-top:28px;display:flex;align-items:center;flex-wrap:wrap;gap:8px 15px;font-weight:600}
.hero-audience span{border-left:1px solid #b2bdc5;padding-left:15px}
.hero h1{margin-top:20px;font-size:clamp(2.7rem,4vw,4rem);line-height:1.47;letter-spacing:.035em;font-weight:700}
.hero-emphasis{position:relative;background:linear-gradient(transparent 78%,#e0bd7847 78%,#e0bd7847 95%,transparent 95%)}
.hero-subtitle{font-size:clamp(1.1rem,1.5vw,1.3rem);font-weight:700;margin-top:25px;letter-spacing:.035em}
.hero-description{margin-top:18px;color:var(--muted);font-size:1rem;line-height:1.95}
.hero-action{margin-top:29px}
.hero-action .button{min-width:330px}
.action-note{margin-top:9px;font-size:12px;color:#697781}
.text-link{display:inline-flex;align-items:center;gap:15px;padding:8px 0;border-bottom:1px solid #8c9ca7;font-size:14px;font-weight:600;line-height:1.6}
.text-link:hover{color:#8c662b;border-color:#8c662b}
.hero .text-link{margin-top:15px}
.down-mark{display:inline-block;width:7px;height:7px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);margin-top:-5px}
.hero-visual{position:relative;min-height:725px;overflow:hidden;background:var(--navy);color:white}
.hero-photo{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:57% center;filter:saturate(.45)}
.visual-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0b223848 0%,#0a213774 33%,#0d2339eb 80%,#0d2339 100%)}
.visual-topline{position:absolute;top:28px;left:35px;right:35px;display:flex;align-items:center;justify-content:space-between;gap:10px;font:500 11px/1.5 Arial,sans-serif;letter-spacing:.16em}
.visual-message{position:absolute;top:25%;left:10%;right:8%;font-size:clamp(1.55rem,2.6vw,2.4rem);font-family:var(--display-font);line-height:1.85;font-weight:600;letter-spacing:.07em;text-shadow:0 2px 20px #071b36}
.visual-message span{color:#f3d49a}
.finance-note{position:absolute;bottom:70px;left:10%;right:10%;border-top:1px solid #ffffff70;border-bottom:1px solid #ffffff30;padding:22px 0 14px}
.note-label{font-size:17px;letter-spacing:.08em;font-weight:600;margin-bottom:15px}
.note-row{display:flex;align-items:center;gap:20px;border-top:1px solid #ffffff26;padding:10px 0;font-size:14px;color:#edf2f6}
.note-number{font:400 17px/1.4 Georgia,serif;color:var(--gold)}
.visual-caption{position:absolute;bottom:26px;left:10%;font-size:12px;color:#d1dce4;letter-spacing:.025em}
.service-strip{display:grid;grid-template-columns:repeat(3,1fr);max-width:1440px;margin:auto;border-bottom:1px solid var(--line);padding:29px 6%}
.service-strip div{display:flex;align-items:center;justify-content:center;gap:18px;font-size:15px;font-weight:600;letter-spacing:.03em;border-right:1px solid var(--line)}
.service-strip div:last-child{border-right:0}
.service-strip span{font:italic 17px/1.5 Georgia,serif;color:#9c753c}
.section{max-width:1260px;margin:auto;padding:108px 35px}
.problems{display:grid;grid-template-columns:.9fr 1.25fr;gap:80px}
.section-intro h2,.approach h2,.company h2,.faq-inner h2{margin-top:24px}
.section-lead{color:var(--muted);font-size:15px;line-height:1.95;margin-top:24px}
.problem-list{border-top:1px solid var(--line)}
.problem-item{display:flex;gap:24px;padding:26px 0;border-bottom:1px solid var(--line)}
.problem-number{font:italic 21px/1.7 Georgia,serif;color:#8b652d;flex-shrink:0}
.problem-item h3{font-size:1.1rem}
.problem-item p{color:var(--muted);font-size:15px;line-height:1.85;margin-top:10px}
.mobile-break{display:none}
.support-section{background:var(--pale)}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.section-heading h2{margin-top:23px}
.heading-description{color:var(--muted);font-size:16px;padding-bottom:8px}
.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px;margin-top:48px}
.support-card{padding:27px 28px 30px;background:white;border-top:3px solid var(--navy);display:flex;flex-direction:column;align-items:flex-start}
.support-top{display:flex;justify-content:space-between;align-items:center;width:100%}
.support-number{font:400 32px/1.3 Georgia,serif;color:#a37b40}
.support-category{font-size:13px;color:#61717d}
.support-icon{width:45px;height:45px;margin-top:24px;color:#456174}
.support-card h3{margin-top:21px;font-size:1.18rem}
.support-card>p:not(.support-focus){margin:15px 0 26px;color:var(--muted);font-size:15px;line-height:1.95}
.support-card .support-focus{font-size:14px;padding-top:19px;border-top:1px solid var(--line);width:100%;margin-top:auto;font-weight:600}
.related-support{margin-top:31px;display:grid;grid-template-columns:1.05fr 1.15fr;gap:30px;align-items:center;padding:22px 0;border-top:1px solid #cfd8df;border-bottom:1px solid #cfd8df}
.related-support p:first-child{font-weight:600;font-size:16px}
.related-support span{display:block;font-size:12px;color:#637481;margin-bottom:2px}
.related-support p:last-child{font-size:14px;color:var(--muted);line-height:1.9}
.approach{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}
.approach h2{font-size:clamp(1.8rem,2.8vw,2.4rem)}
.approach-lead{margin:27px 0 20px;font-size:18px;line-height:1.9;font-weight:600}
.approach-copy>p:not(.eyebrow):not(.approach-lead){font-size:15px;line-height:2;color:var(--muted);margin-top:14px}
.approach-diagram{background:var(--navy);color:white;padding:32px 29px 30px}
.diagram-header{display:flex;flex-direction:column;gap:9px;border-bottom:1px solid #ffffff30;padding-bottom:24px}
.diagram-header span:first-child{font:500 11px/1.6 Arial,sans-serif;letter-spacing:.16em;color:#dfc796}
.diagram-header span:last-child{font-size:18px;font-weight:500;letter-spacing:.05em}
.diagram-pair{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:31px}
.diagram-pair>div{padding:20px 14px;background:#ffffff0c;border:1px solid #ffffff30;text-align:center}
.diagram-index{font:500 11px/1.6 Arial,sans-serif;letter-spacing:.1em;color:#d4bf96;display:block}
.diagram-pair strong{display:block;font-size:21px;font-weight:500;letter-spacing:.06em;margin-top:7px}
.diagram-pair p{font-size:14px;line-height:1.8;color:#d3dfe7;margin-top:12px}
.diagram-plus{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);color:#dfc796}
.diagram-connector{height:30px;width:1px;background:#c9b285;margin:0 auto}
.diagram-outcome{text-align:center;background:#e0bd78;color:var(--navy);padding:15px 10px;font-size:14px;font-weight:600}
.mid-cta{max-width:1190px;margin:0 auto 35px;background:#eef3f6;border-left:3px solid #b09260;padding:32px 38px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.mid-cta p{font-size:18px;font-weight:600}
.mid-cta span{font-size:13px;color:var(--muted)}
.mid-cta .button{font-size:15px}
.company{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}
.company-heading>p:not(.eyebrow){margin-top:25px;font-size:15px;color:var(--muted);line-height:2}
.company .text-link{margin-top:20px}
.company-details dl{margin:0;border-top:1px solid var(--line)}
.company-details dl>div{display:grid;grid-template-columns:110px 1fr;gap:18px;border-bottom:1px solid var(--line);padding:19px 0;font-size:14px}
.company-details dt{color:var(--muted)}
.company-details dd{margin:0;line-height:1.85}
.faq-section{background:#f4f6f8}
.faq-inner{display:grid;grid-template-columns:.8fr 1.25fr;gap:80px}
.faq-list{border-top:1px solid #cbd5de}
.faq-list details{border-bottom:1px solid #cbd5de}
.faq-list summary{display:flex;align-items:flex-start;gap:15px;padding:25px 3px;font-size:16px;font-weight:600;list-style:none;cursor:pointer;line-height:1.7}
.faq-list summary::-webkit-details-marker{display:none}
.question-mark{font:400 20px/1.4 Georgia,serif;color:#967139;flex-shrink:0}
.faq-toggle{flex-shrink:0;width:16px;height:16px;margin-top:6px;margin-left:auto;position:relative}
.faq-toggle::before,.faq-toggle::after{content:"";position:absolute;top:7px;left:1px;width:14px;height:1px;background:var(--navy)}
.faq-toggle::after{transform:rotate(90deg)}
details[open] .faq-toggle::after{transform:rotate(0deg)}
.faq-answer{padding:0 32px 26px 40px;font-size:15px;line-height:2;color:var(--muted)}
.contact-section{background:var(--navy-deep);color:white}
.contact-inner{max-width:1190px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:85px;padding:88px 35px 83px}
.contact-section .eyebrow{color:#e2c894}
.contact-main h2{margin-top:28px;font-size:clamp(2rem,3vw,2.8rem);letter-spacing:.05em}
.contact-main>p:not(.eyebrow){font-size:16px;color:#d3dfe7;line-height:2.1;margin-top:23px}
.online-tag{display:inline-block;padding:5px 14px;border:1px solid #ffffff40;color:#e4edf3;font-size:13px;margin-top:29px}
.contact-action{border-left:1px solid #ffffff30;padding-left:45px;align-self:center}
.contact-action-title{font-size:16px;font-weight:600;letter-spacing:.04em;margin-bottom:20px}
.contact-action>.button{width:100%;font-size:15px;padding-left:16px;padding-right:16px}
.contact-hint{font-size:13px;color:#d6e1e9;line-height:1.9;margin-top:17px;text-align:center}
.contact-fee{font-size:12px;color:#c8d3dc;margin-top:15px;text-align:center}
.contact-alternatives{text-align:center;margin-top:23px;padding-top:19px;border-top:1px solid #ffffff25}
.contact-alternatives p{color:#c8d3dc;font-size:12px}
.site-footer{background:#091925;color:#d2dde5}
.footer-inner{max-width:1260px;margin:auto;display:flex;align-items:center;gap:30px;padding:38px 35px}
.footer-brand .brand-word{font-size:2rem}
.footer-brand .brand-sub{font-size:11px;color:#c2d0db}
.footer-links{display:flex;align-items:center;gap:28px;margin-left:auto;font-size:12px}
.footer-links a{padding:10px 0}
.footer-links a:hover{text-decoration:underline}
.footer-inner small{font-size:11px;white-space:nowrap;margin-left:20px;color:#aebdca}


/* Shared typography and content flow. */
body { line-break: strict; overflow-wrap: anywhere; }
p { text-wrap: pretty; }
.headline-line { display: block; }
.phrase, .hero-subtitle > span { display: inline-block; max-width: 100%; }
.hero-description { max-width: 31em; }
.section-lead, .problem-item p, .support-card > p:not(.support-focus),
.approach-copy > p:not(.eyebrow):not(.approach-lead),
.company-heading > p:not(.eyebrow), .faq-answer { font-size: 16px; }
.business-list { list-style: none; margin: 0; padding: 0; }
.business-list li + li { margin-top: 6px; }
.faq-list summary { display: grid; grid-template-columns: 24px minmax(0, 1fr) 16px; }
.faq-question { min-width: 0; }
.faq-toggle { margin-left: 0; }
.mid-cta p .phrase { color: inherit; font-size: inherit; }
.contact-main > p + p:not(.eyebrow) { margin-top: 12px; }
.footer-inner { padding-bottom: 145px; }

/* Consultation channels have no destination until the owner configures them. */
.free-consultation-badge {
  display: inline-block; background: var(--gold); color: var(--navy-deep);
  font-size: 13px; line-height: 1.5; padding: 3px 8px;
}
.contact-action-title { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; line-height: 1.8; }
.contact-channel-intro { font-size: 15px; color: #d6e1e9; margin-bottom: 18px; }
.contact-channel-list { display: grid; gap: 12px; }
.channel-link { flex-direction: column; gap: 3px; min-height: 80px; width: 100%; padding: 14px 18px; }
.channel-label { font-size: 18px; line-height: 1.6; }
.channel-detail { font-size: 13px; font-weight: 400; line-height: 1.6; }
.button-line { background: #06c755; color: #073b20; }
.button-line:hover { background: #29d672; }
.button-email { background: white; color: var(--navy); }
.button-email:hover { background: #edf3f7; }
.channel-link[aria-disabled="true"] { cursor: default; box-shadow: none; }
.channel-link[aria-disabled="true"]:active { transform: none; }
.contact-setup-status { font-size: 14px; color: #f0d29a; line-height: 1.7; text-align: center; margin-top: 16px; }
.contact-setup-status[hidden] { display: none; }
.contact-hint { margin-top: 22px; font-size: 14px; text-align: left; }
.contact-fee { padding-top: 16px; border-top: 1px solid #ffffff25; margin-top: 18px; font-size: 14px; line-height: 1.8; text-align: left; }
.contact-action .channel-link:focus-visible { outline-color: var(--gold); }

/* A compact fixed panel keeps the consultation entry within the viewport. */
.consultation-dock {
  position: fixed; z-index: 45; left: 24px; bottom: 20px; width: 280px;
  padding: 10px 12px 12px; background: #fffffffa; border: 1px solid #cbd7df;
  border-radius: 8px; box-shadow: 0 7px 30px #0b213026; text-align: center;
}
.dock-caption { display: block; margin-bottom: 6px; color: var(--navy); font-size: 12px; line-height: 1.5; }
.consultation-dock .button { width: 100%; min-height: 50px; padding: 11px 12px; font-size: 16px; gap: 10px; cursor: pointer; }
.dock-trigger svg { width: 22px; height: 22px; flex-shrink: 0; }
.consultation-panel {
  position: fixed; z-index: 50; left: 24px; bottom: 132px; width: 380px;
  max-width: calc(100vw - 32px); max-height: calc(100vh - 152px);
  max-height: calc(100dvh - 152px); display: flex; flex-direction: column;
  margin: 0; background: var(--navy-deep); color: white; border: 1px solid #446075;
  border-radius: 10px; box-shadow: 0 12px 48px #071b3652; overflow: hidden;
}
.consultation-panel[hidden] { display: none; }
.panel-header { display: flex; align-items: center; gap: 12px; flex-shrink: 0; padding: 14px 16px 14px 20px; border-bottom: 1px solid #ffffff25; }
.panel-header > div { min-width: 0; }
.panel-eyebrow { display: block; font-size: 12px; color: var(--gold); line-height: 1.5; }
.panel-header h2 { font-size: 20px; line-height: 1.5; letter-spacing: 0; margin-top: 3px; }
.panel-close {
  font-family: inherit; font-size: 28px; line-height: 1; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center; margin-left: auto;
  width: 44px; height: 44px; border: 1px solid #ffffff40;
  background: transparent; color: white; border-radius: 5px; cursor: pointer;
}
.panel-close:hover { background: #ffffff16; }
.panel-close:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; }
.panel-content { min-height: 0; padding: 16px 20px 18px; overflow-y: auto; overscroll-behavior: contain; }
.consultation-panel .contact-channel-list { gap: 10px; }
.consultation-panel .channel-link { min-height: 68px; padding: 10px 12px; }
.consultation-panel .channel-label { font-size: 17px; }
.consultation-panel .button-email { border: 1px solid #cad6e0; }
.consultation-panel .contact-setup-status { margin-top: 12px; }
.panel-note { font-size: 14px; line-height: 1.8; color: #d6e1e9; margin-top: 14px; }
.panel-fee { font-size: 13px; line-height: 1.8; color: #c7d3dc; margin-top: 12px; padding-top: 12px; border-top: 1px solid #ffffff25; }

@media (min-width: 1600px) {
  .hero-copy { padding-left: 85px; }
  .hero h1 { font-size: 64px; }
}

@media (max-width: 1150px) {
  .header-inner { gap: 24px; padding-left: 30px; padding-right: 30px; }
  .desktop-nav { gap: 20px; }
  .hero-copy { padding: 44px 30px 40px; }
  .hero h1 { font-size: clamp(36px, 4.3vw, 48px); }
  .hero-audience { font-size: 13px; gap: 8px; }
  .hero-audience span { padding-left: 8px; }
  .hero-subtitle { font-size: 18px; }
  .hero-action .button { min-width: 0; width: 100%; padding-left: 15px; padding-right: 15px; }
  .problems, .approach, .company, .faq-inner { gap: 45px; }
  .support-grid { gap: 16px; }
  .support-card { padding: 25px 23px; }
  .support-card h3 { font-size: 18px; }
  .mid-cta { margin-left: 35px; margin-right: 35px; }
  .contact-inner { gap: 40px; }
  .contact-action { padding-left: 32px; }
  .footer-inner { flex-wrap: wrap; }
  .footer-inner small { margin-left: 0; }
}

@media (max-width: 960px) {
  .desktop-nav { display: none; }
  .header-cta { margin-left: auto; }
  .hero { grid-template-columns: 1fr; }
  .hero-copy { width: 100%; max-width: 720px; padding: 48px 35px; margin: auto; }
  .hero h1 { font-size: 48px; }
  .hero-action .button { width: auto; min-width: 320px; }
  .hero-visual { min-height: 0; padding: 28px 35px; display: grid; gap: 24px; }
  .hero-photo { object-position: center; }
  .visual-topline, .visual-message, .finance-note, .visual-caption { position: relative; inset: auto; width: 100%; max-width: 650px; margin: auto; }
  .visual-message { font-size: 30px; line-height: 1.7; }
  .finance-note { padding: 16px 0 8px; }
  .visual-caption { font-size: 12px; }
  .service-strip { padding: 24px; }
  .service-strip div { font-size: 14px; gap: 10px; }
  .section { padding-top: 80px; padding-bottom: 80px; }
  .problems, .approach, .company, .faq-inner { grid-template-columns: 1fr; gap: 36px; }
  .section-heading { display: block; }
  .heading-description { margin-top: 22px; }
  .support-grid { grid-template-columns: 1fr; gap: 18px; }
  .support-card { position: relative; padding: 28px; }
  .support-top { justify-content: flex-start; gap: 18px; padding-right: 54px; }
  .support-icon { position: absolute; right: 28px; top: 26px; margin: 0; width: 40px; height: 40px; }
  .support-card h3 { font-size: 22px; margin-top: 20px; }
  .support-card > p:not(.support-focus) { margin-bottom: 20px; }
  .related-support { grid-template-columns: 1fr; gap: 8px; }
  .approach-diagram { max-width: 650px; width: 100%; }
  .mid-cta { align-items: flex-start; }
  .mid-cta .button { flex-shrink: 0; }
  .company-details dl > div { grid-template-columns: 125px 1fr; }
  .contact-inner { grid-template-columns: 1fr; gap: 35px; max-width: 720px; padding-top: 64px; padding-bottom: 60px; }
  .contact-action { border-left: 0; border-top: 1px solid #ffffff30; padding: 30px 0 0; }
  .contact-channel-list, .contact-channel-intro { width: 100%; }
}

@media (max-width: 640px) {
  html { scroll-padding-top: 90px; }
  body { font-size: 16px; }
  .header-inner { min-height: 72px; padding: 12px 20px; gap: 12px; }
  .brand-word { font-size: 28px; }
  .brand-sub { font-size: 11px; margin-top: 6px; letter-spacing: .03em; }
  .header-cta { font-size: 13px; min-height: 44px; padding: 10px 13px; letter-spacing: 0; }
  .hero-copy { padding: 32px 20px 36px; }
  .eyebrow { font-size: 11px; letter-spacing: .1em; gap: 10px; line-height: 1.6; }
  .eyebrow-rule { width: 24px; }
  .hero-audience { margin-top: 20px; gap: 5px; font-size: 13px; display: flex; flex-direction: column; align-items: flex-start; }
  .hero-audience span { border: 0; padding: 0; color: var(--muted); font-weight: 500; }
  .hero h1 { font-size: clamp(30px, 9.2vw, 42px); margin-top: 22px; line-height: 1.5; letter-spacing: 0; }
  .hero-subtitle { font-size: 17px; line-height: 1.8; letter-spacing: 0; margin-top: 20px; }
  .hero-description { font-size: 16px; line-height: 1.9; margin-top: 16px; }
  .hero-action { margin-top: 24px; }
  .hero-action .button { min-width: 0; width: 100%; min-height: 54px; font-size: 16px; padding: 14px; }
  .action-note { font-size: 12px; line-height: 1.7; text-align: center; margin-top: 9px; }
  .hero .text-link { font-size: 14px; min-height: 44px; margin-top: 10px; }
  .hero-visual { padding: 24px 20px; gap: 20px; }
  .visual-topline { font-size: 11px; letter-spacing: .08em; }
  .visual-topline span:last-child { display: none; }
  .visual-message { font-size: clamp(24px, 6.5vw, 29px); letter-spacing: .02em; }
  .finance-note { padding: 14px 0 6px; }
  .note-label { font-size: 16px; letter-spacing: .02em; margin-bottom: 10px; }
  .note-row { gap: 16px; font-size: 15px; padding: 8px 0; }
  .note-number { font-size: 17px; }
  .visual-caption { font-size: 12px; line-height: 1.8; }
  .service-strip { grid-template-columns: 1fr; padding: 12px 20px; gap: 0; }
  .service-strip div { justify-content: flex-start; border-right: 0; border-bottom: 1px solid var(--line); padding: 13px 0; font-size: 16px; gap: 18px; letter-spacing: 0; }
  .service-strip div:last-child { border-bottom: 0; }
  .service-strip span { width: 24px; flex-shrink: 0; font-size: 18px; }
  .section { padding: 58px 20px; }
  h2, .approach h2, .contact-main h2 { font-size: clamp(24px, 7.2vw, 30px); line-height: 1.6; letter-spacing: 0; }
  .section-intro h2, .section-heading h2, .approach h2, .company h2, .faq-inner h2, .contact-main h2 { margin-top: 18px; }
  .section-lead { margin-top: 18px; line-height: 1.9; }
  .desktop-break { display: none; }
  .problems { gap: 28px; }
  .problem-item { display: block; padding: 22px 0; }
  .problem-number { display: block; font-size: 20px; line-height: 1.3; margin-bottom: 9px; }
  .problem-item h3 { font-size: 18px; line-height: 1.7; letter-spacing: 0; }
  .problem-item h3 .phrase { display: block; }
  .problem-item p { font-size: 16px; line-height: 1.9; margin-top: 10px; }
  .heading-description { font-size: 16px; margin-top: 18px; line-height: 1.9; padding: 0; }
  .support-grid { margin-top: 28px; gap: 18px; }
  .support-card { padding: 22px 20px; }
  .support-top { gap: 15px; }
  .support-number { font-size: 30px; }
  .support-category { font-size: 13px; }
  .support-icon { right: 20px; top: 21px; width: 36px; height: 36px; }
  .support-card h3 { font-size: 19px; line-height: 1.7; letter-spacing: 0; margin-top: 20px; }
  .support-card > p:not(.support-focus) { font-size: 16px; margin: 14px 0 20px; line-height: 1.9; }
  .support-card .support-focus { font-size: 14px; line-height: 1.8; padding-top: 16px; }
  .related-support { margin-top: 24px; padding: 20px 0; }
  .related-support p:last-child { font-size: 15px; line-height: 1.9; }
  .related-support span { font-size: 13px; margin-bottom: 6px; }
  .approach { gap: 28px; }
  .approach-lead { font-size: 18px; margin: 20px 0 16px; }
  .approach-copy > p:not(.eyebrow):not(.approach-lead) { font-size: 16px; line-height: 1.9; }
  .approach-diagram { padding: 24px 20px; }
  .diagram-header { gap: 7px; padding-bottom: 18px; }
  .diagram-header span:first-child { font-size: 11px; }
  .diagram-header span:last-child { font-size: 17px; letter-spacing: 0; }
  .diagram-pair { grid-template-columns: 1fr; gap: 0; margin-top: 20px; }
  .diagram-pair > div { padding: 18px 14px; }
  .diagram-index { font-size: 11px; }
  .diagram-pair strong { font-size: 22px; margin-top: 4px; }
  .diagram-pair p { font-size: 16px; margin-top: 8px; }
  .diagram-plus { position: static; transform: none; text-align: center; line-height: 36px; font-size: 22px; }
  .diagram-connector { height: 24px; }
  .diagram-outcome { font-size: 16px; line-height: 1.8; padding: 16px 14px; }
  .mid-cta { display: block; margin: 0 20px; padding: 24px 20px; }
  .mid-cta p { font-size: 18px; line-height: 1.8; }
  .mid-cta > div > span { display: block; font-size: 13px; margin-top: 8px; }
  .mid-cta .button { font-size: 16px; width: 100%; padding: 14px 10px; margin-top: 20px; min-height: 52px; }
  .company { gap: 28px; }
  .company-heading > p:not(.eyebrow) { margin-top: 18px; font-size: 16px; line-height: 1.9; }
  .company-details dl > div { grid-template-columns: 1fr; gap: 7px; padding: 18px 0; font-size: 16px; }
  .company-details dt { font-size: 13px; font-weight: 600; }
  .company-details dd { line-height: 1.85; }
  .business-list li + li { margin-top: 8px; }
  .faq-inner { gap: 26px; }
  .faq-list summary { grid-template-columns: 21px minmax(0, 1fr) 16px; gap: 9px; font-size: 16px; line-height: 1.75; padding: 22px 0; }
  .question-mark { font-size: 20px; }
  .faq-answer { padding: 0 0 22px; font-size: 16px; line-height: 1.9; }
  .contact-inner { padding: 56px 20px 48px; gap: 28px; }
  .contact-main > p:not(.eyebrow) { font-size: 16px; line-height: 1.9; margin-top: 20px; }
  .contact-main > p + p:not(.eyebrow) { margin-top: 12px; }
  .online-tag { margin-top: 22px; font-size: 13px; }
  .contact-action { padding-top: 26px; }
  .contact-action-title { flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: 14px; font-size: 16px; letter-spacing: 0; }
  .contact-channel-intro { font-size: 15px; line-height: 1.8; margin-bottom: 16px; }
  .channel-label { font-size: 18px; }
  .channel-detail { font-size: 13px; }
  .contact-hint, .contact-fee { font-size: 14px; line-height: 1.9; }
  .footer-inner { padding: 32px 20px 128px; display: block; }
  .footer-brand { display: inline-flex; }
  .footer-brand .brand-sub { font-size: 12px; }
  .footer-links { margin: 20px 0 0; gap: 0 22px; flex-wrap: wrap; font-size: 13px; }
  .footer-links a { min-height: 44px; display: flex; align-items: center; }
  .footer-inner small { display: block; margin: 18px 0 0; font-size: 12px; }
  .consultation-dock { left: 10px; bottom: calc(10px + env(safe-area-inset-bottom)); width: 280px; max-width: calc(100% - 20px); padding: 7px 10px 9px; }
  .dock-caption { font-size: 12px; margin-bottom: 4px; }
  .consultation-dock .button { min-height: 46px; font-size: 16px; padding: 9px 12px; }
  .consultation-panel { left: 10px; right: 10px; bottom: calc(106px + env(safe-area-inset-bottom)); width: auto; max-width: none; max-height: calc(100vh - 124px - env(safe-area-inset-bottom)); max-height: calc(100dvh - 124px - env(safe-area-inset-bottom)); }
  .panel-header { padding: 12px 14px; }
  .panel-header h2 { font-size: 20px; }
  .panel-content { padding: 14px; }
  .consultation-panel .channel-link { min-height: 64px; padding: 8px 10px; }
  .consultation-panel .channel-label { font-size: 17px; }
  .panel-note { margin-top: 12px; font-size: 14px; }
  .panel-fee { margin-top: 10px; padding-top: 10px; font-size: 13px; }
  a:focus-visible, summary:focus-visible { outline-offset: 2px; }
}

@media (max-width: 360px) {
  .header-inner { padding-left: 16px; padding-right: 16px; gap: 8px; }
  .brand-word { font-size: 25px; }
  .brand-sub { font-size: 10px; }
  .header-cta { font-size: 12px; padding: 10px; }
  .support-card h3 { font-size: 18px; }
  .support-card .support-focus { font-size: 14px; }
  .hero-subtitle > span { display: block; }
}

@media (max-height: 500px) {
  .panel-header { padding-top: 8px; padding-bottom: 8px; }
  .panel-header h2 { margin-top: 0; }
  .panel-content { padding-top: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}
@media print {
  .site-header { position: static; }
  .consultation-dock, .consultation-panel, .skip-link { display: none !important; }
  .section { padding-top: 40px; padding-bottom: 40px; }
  .footer-inner { padding-bottom: 30px; }
}

/* Keep unavailable contact channels out of the consultation flow. */
.channel-link[hidden]{display:none!important}

/* articles.css */
.article-page,.guide-index{max-width:880px;margin:auto;padding:48px 36px 70px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:14px;color:#52636d;margin-bottom:35px}.breadcrumbs a,.article-body a,.article-toc a,.article-back a,.editorial-link,.guide-meta a{text-decoration:underline;text-underline-offset:4px}.article-heading h1,.guide-index h1{font-size:clamp(28px,3.1vw,42px);line-height:1.6;letter-spacing:.01em;margin:14px 0 20px;text-wrap:pretty}.guide-category{color:#765924;font-size:14px;font-weight:700;letter-spacing:.04em}.article-description{font-size:18px;line-height:1.9;margin:20px 0}.guide-meta{font-size:13px;color:#52636d;line-height:1.8;margin-top:8px}.article-toc{background:#f2f5f7;border-top:3px solid #b08b4c;padding:24px 28px;margin:32px 0 44px}.article-toc strong{font-size:16px}.article-toc ol{padding-left:23px;margin:16px 0 0}.article-toc li{padding:6px 0;font-size:16px}.article-body{font-size:17px;line-height:2}.article-body p{margin:20px 0}.article-body h2{font-size:26px;line-height:1.65;margin:48px 0 20px;padding-bottom:14px;border-bottom:1px solid #dce3e8;letter-spacing:0}.article-body h3{font-size:21px;line-height:1.7;margin:30px 0 16px}.article-body ul,.article-body ol{padding-left:25px;margin:20px 0}.article-body li{margin:10px 0}.article-body strong{color:#122b3d}.article-body blockquote{margin:24px 0;padding:3px 22px;border-left:3px solid #b08b4c;background:#f2f5f7}.article-body code{font-size:15px;background:#edf2f5;padding:2px 5px}.article-body pre{padding:18px;background:#edf2f5;white-space:pre-wrap;overflow-wrap:anywhere}.article-sources{margin-top:45px}.article-sources li{font-size:15px;line-height:1.8}.article-sources small{display:block;font-size:13px;color:#52636d}.article-cta{margin-top:48px;padding:30px;background:#122b3d;color:#fff}.article-cta .eyebrow{color:#e0bd78}.article-cta h2{font-size:26px;margin:16px 0 20px;letter-spacing:0}.article-cta p{font-size:16px;line-height:1.9}.article-cta .contact-pending{font-size:14px;color:#f0d29a;margin:18px 0}.article-cta .button{margin-top:7px}.article-back{margin-top:30px;font-size:16px}.index-lead{font-size:24px;line-height:1.8;font-weight:600;margin:20px 0}.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:22px;margin:35px 0 25px}.guide-card{border:1px solid #dce3e8;border-top:3px solid #122b3d;background:white;padding:27px}.guide-card h2{font-size:22px;line-height:1.7;letter-spacing:0;margin:12px 0 15px}.guide-card h2 a:hover{text-decoration:underline}.guide-card>p:not(.guide-category){font-size:16px;line-height:1.9;color:#52636d}.guide-card .guide-meta{display:block;margin-top:18px}.home-guides{background:#f7f9fa}.home-guides>h2{margin-top:18px}.editorial-link{display:inline-block;padding:10px 0;font-size:15px}@media(max-width:640px){.article-page,.guide-index{padding:30px 20px 45px}.breadcrumbs{margin-bottom:25px;font-size:13px}.article-heading h1,.guide-index h1{font-size:27px;line-height:1.65}.article-description{font-size:16px}.article-toc{padding:20px;margin:26px 0 34px}.article-body{font-size:16px;line-height:1.95}.article-body h2{font-size:23px;margin-top:36px}.article-body h3{font-size:19px}.article-body ul,.article-body ol{padding-left:21px}.article-cta{padding:24px 20px}.article-cta h2{font-size:23px}.article-cta .button{width:100%;font-size:15px;padding:13px}.guide-card{padding:22px 20px}.guide-card h2{font-size:21px}.index-lead{font-size:21px}.article-page .header-cta{font-size:12px}}

.article-table{margin:26px 0}.article-table table{width:100%;border-collapse:collapse;font-size:16px}.article-table th,.article-table td{padding:13px 12px;border-bottom:1px solid #dce3e8;text-align:right}.article-table th:first-child{text-align:left}.article-table thead{background:#eef3f6}.article-table tbody tr:last-child{font-weight:700;background:#f4f6f8}@media(max-width:640px){.article-table table,.article-table tbody{display:block}.article-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.article-table tbody tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid #dce3e8;margin:12px 0;padding:12px 14px;gap:10px}.article-table tbody th{grid-column:1/-1}.article-table th,.article-table td{padding:0;border:0;text-align:left}.article-table td::before{content:attr(data-label);display:block;color:#52636d;font-size:13px;font-weight:400;margin-bottom:4px}}

.guide-topic-nav{margin:32px 0 40px;padding:23px;background:#f2f5f7;border-top:3px solid #b08b4c}.guide-topic-nav>p{font-size:15px;font-weight:600;margin-bottom:15px}.guide-topic-nav>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.guide-topic-nav a{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#fff;border:1px solid #dce3e8;font-size:15px;font-weight:600}.guide-topic-nav a:hover{border-color:#b08b4c}.guide-topic-nav span,.guide-topic-section>h2 span{font-size:12px;font-weight:400;color:#60717c;white-space:nowrap}
.guide-topic-section{margin-top:42px;scroll-margin-top:110px}.guide-topic-section>h2{display:flex;align-items:center;gap:14px;font-size:25px;line-height:1.6;padding-bottom:14px;border-bottom:1px solid #dce3e8}.guide-topic-section .guide-grid{margin-top:23px}.guide-card h3{font-size:22px;line-height:1.7;letter-spacing:0;margin:12px 0 15px}.guide-card h3 a:hover{text-decoration:underline}.article-cta .article-fee-note{font-size:13px;color:#d0dce5;margin-top:14px}.article-related{margin-top:35px;padding-top:23px;border-top:1px solid #dce3e8}.article-related h2{font-size:20px;line-height:1.7}.article-related ul{padding-left:22px}.article-related li{margin-top:12px;font-size:16px;line-height:1.9}.article-related a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:640px){.guide-topic-nav{padding:18px 14px}.guide-topic-nav>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.guide-topic-nav a{font-size:14px;padding:10px 8px;flex-wrap:wrap;gap:2px 8px}.guide-topic-section>h2{font-size:23px}.guide-card h3{font-size:21px}.guide-topic-section{scroll-margin-top:85px}.article-related h2{font-size:19px}}

/* valuation.css */
.valuation-page{max-width:1280px;margin:0 auto;padding:35px 40px 70px;color:#142f40}.valuation-page [hidden]{display:none!important}.valuation-heading{max-width:860px;margin-bottom:38px}.valuation-heading .eyebrow{font-size:12px}.valuation-heading h1{font-size:clamp(32px,4vw,50px);line-height:1.55;letter-spacing:.02em;margin:15px 0}.valuation-heading h1 span{display:inline-block}.valuation-lead{font-size:18px;line-height:1.9;color:#506674;margin-top:14px}.valuation-meta{display:flex;gap:10px 22px;flex-wrap:wrap;margin:20px 0;font-size:14px;font-weight:600}.valuation-meta span{padding-left:12px;border-left:2px solid #b9985e}.valuation-intro-note{font-size:14px;line-height:1.9;color:#526675}.valuation-page a:not(.button){text-decoration:underline;text-underline-offset:4px}.valuation-workspace{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:28px;align-items:start}.valuation-form{background:#f3f6f8;border:1px solid #dae3e9;padding:28px;border-radius:12px;min-width:0}.valuation-section-title{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}.valuation-section-title>div{display:flex;align-items:center;gap:10px}.valuation-section-title h2{font-size:21px;line-height:1.5;letter-spacing:0}.step-number{font:italic 22px Georgia,serif;color:#9a743a}.field-intro{font-size:15px;line-height:1.9;color:#506674;margin-bottom:20px}.valuation-fieldset{border:0;margin:0 0 27px;padding:0;min-width:0}.valuation-fieldset legend{font-size:14px;font-weight:700;padding:0 0 13px;color:#435f70}.valuation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}.value-field{min-width:0}.value-field label{display:block;font-size:15px;line-height:1.7;font-weight:600;margin-bottom:7px}.input-unit{position:relative;display:flex;align-items:center;background:#fff;border:1px solid #aebfc9;border-radius:5px;overflow:hidden}.input-unit:focus-within{outline:2px solid #b99657;outline-offset:2px}.input-unit input{min-width:0;width:100%;border:0;border-radius:0;padding:12px 9px 12px 12px;background:transparent;color:#153347;font:600 18px/1.5 system-ui,sans-serif;text-align:right}.input-unit input::placeholder{font-size:15px;font-weight:400;color:#85929b}.input-unit input:focus{outline:0}.input-unit input[aria-invalid=true]{box-shadow:inset 0 0 0 2px #ae3830}.input-unit>span{font-size:13px;color:#516774;padding-right:11px;flex-shrink:0}.value-field small,.field-help{display:block;font-size:13px;line-height:1.8;color:#5d7180;margin-top:7px}.assumption-note{font-size:14px;line-height:1.9;padding:15px 17px;background:#f5ecd9;border-left:3px solid #be9b5c;margin:0 0 22px;color:#514329}.assumption-note strong{display:block;margin-bottom:3px}.valuation-adjustments{margin:0 0 24px;border-top:1px solid #cad8e1;border-bottom:1px solid #cad8e1;padding:0 0 15px}.valuation-adjustments summary{cursor:pointer;min-height:48px;padding:14px 0;font-size:15px;font-weight:600;line-height:1.7}.valuation-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.valuation-actions .button{border:0;cursor:pointer;flex:1;font-size:17px;min-height:54px;line-height:1.6;padding:13px 16px}.subtle-button{background:none;border:0;border-bottom:1px solid #7a8b97;color:#304f63;font:inherit;font-size:14px;min-height:44px;padding:6px 1px;cursor:pointer}.valuation-privacy{font-size:13px;color:#526675;line-height:1.9;margin-top:17px}.valuation-error{background:#fff0ee;border:1px solid #c36156;color:#813329;padding:15px 17px;font-size:15px;line-height:1.8;margin:0 0 18px}.valuation-error ul{padding-left:20px}.sample-note{background:#e4edf3;color:#244a64;padding:13px 16px;font-size:14px;line-height:1.8;margin-bottom:20px}.valuation-results{position:sticky;top:108px;max-height:calc(100vh - 128px);max-height:calc(100dvh - 128px);overflow-y:auto;overscroll-behavior:contain;scroll-margin-top:110px;border:1px solid #d2dfe8;border-radius:12px;background:white;box-shadow:0 16px 42px #1f405412;min-width:0}.valuation-result-head{background:#143044;color:#fff;padding:24px}.valuation-result-head .eyebrow{color:#dcb875;font-size:12px}.valuation-result-head h2{font-size:22px;letter-spacing:0;margin:10px 0;line-height:1.6}.valuation-result-head p:last-child{font-size:14px;line-height:1.8;color:#e2eaf0}.valuation-empty{padding:45px 25px 50px;text-align:center;font-size:15px;line-height:1.9;color:#667c8b}.valuation-empty>span{font-size:38px;color:#b8975d}.valuation-empty p+p{font-size:13px;margin-top:20px}#valuation-output{padding:22px}.result-caution{font-size:13px;line-height:1.9;color:#607280;margin-bottom:18px}.method-result{border:1px solid #d7e2e9;padding:20px;border-radius:7px;margin-bottom:18px}.method-eyebrow{font-size:12px;letter-spacing:.06em;color:#7d6138;margin-bottom:7px}.method-result h3{font-size:20px;line-height:1.65;margin-bottom:17px}.result-label{font-size:13px;color:#4f6777}.result-value{font-size:clamp(21px,2.4vw,28px);font-weight:700;line-height:1.6;overflow-wrap:anywhere;letter-spacing:0;margin:7px 0}.method-assumption{font-size:13px;color:#677984;line-height:1.8}.sale-result{margin:16px -1px;padding:14px 15px;background:#f4ecd9;border-radius:4px}.sale-result span{display:block;font-size:12px;color:#695431;line-height:1.7}.sale-result strong{display:block;font-size:21px;line-height:1.7;overflow-wrap:anywhere;color:#173b51;margin-top:4px}.result-formula{font-size:13px;line-height:1.9;color:#516775}.valuation-warnings{background:#fff3e4;border-left:3px solid #b38846;padding:14px 16px;font-size:14px;line-height:1.9;margin-bottom:18px}.valuation-warnings p+p{margin-top:10px}.valuation-metrics{margin-bottom:22px;font-size:14px}.valuation-metrics>div{display:flex;gap:12px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #dae3e9}.valuation-metrics dt{color:#59707f}.valuation-metrics dd{font-weight:600;text-align:right;overflow-wrap:anywhere;min-width:0}.valuation-consult{width:100%;font-size:15px;min-height:50px;white-space:normal;line-height:1.6}.valuation-explanation{margin-top:50px;padding-top:30px;border-top:1px solid #d7e1e8;font-size:16px;line-height:1.95;color:#4c6473}.valuation-explanation h2{font-size:26px;color:#18384c;margin-bottom:25px;letter-spacing:0}.explanation-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:25px}.explanation-grid h3{font-size:19px;color:#15364d;margin-bottom:12px}.formula-box{font-size:16px;font-weight:600;padding:20px;background:#eef3f6;color:#214c65;margin-top:18px;border-left:3px solid #c4a163}.listed-calculator{margin-top:35px;padding:0 26px 24px;background:#f1f5f7;border:1px solid #d7e1e8;border-radius:8px;font-size:16px;line-height:1.9;scroll-margin-top:110px}.listed-calculator summary{padding:21px 0;cursor:pointer;font-size:19px;font-weight:600;line-height:1.7}.listed-calculator>p{margin-bottom:18px}.listed-calculator .valuation-fields{max-width:650px;margin:20px 0}.listed-calculator .button{border:0;cursor:pointer;font-size:16px;min-height:50px}.listed-calculator #listed-result{font-weight:600;font-size:19px;overflow-wrap:anywhere;margin:20px 0 8px}.valuation-sources{margin-top:30px;padding-top:20px;border-top:1px solid #dbe3e9;font-size:13px;line-height:1.9;color:#627783}.valuation-sources h2{font-size:16px;letter-spacing:0;margin-bottom:10px}.valuation-sources p+p{margin-top:9px}.valuation-teaser{display:grid;grid-template-columns:1.2fr 1fr;gap:35px;align-items:center;margin-top:44px;padding:35px;border:1px solid #ccd9e2;border-left:4px solid #be9e65;background:#fff;border-radius:8px}.valuation-teaser h3{font-size:26px;line-height:1.6;letter-spacing:0;margin-bottom:12px}.valuation-teaser p{font-size:16px;line-height:1.9;color:#55707e}.valuation-teaser .button{margin-top:18px;font-size:16px;min-height:50px}.valuation-teaser .eyebrow{font-size:12px;color:#806236;margin-bottom:10px}.valuation-teaser-note{border-top:1px solid #d4dfe7;padding-top:15px}.valuation-teaser-note strong{display:block;color:#183b51;font-size:19px;margin-bottom:12px}.valuation-teaser-note small{font-size:13px;line-height:1.8;display:block;margin-top:12px}
@media(max-width:1000px){.valuation-workspace{grid-template-columns:1fr}.valuation-results{position:relative;top:auto;max-height:none}.valuation-page{max-width:820px;padding:30px}.valuation-heading h1{font-size:40px}.valuation-teaser{grid-template-columns:1fr;gap:22px}}
@media(max-width:640px){.valuation-page{padding:25px 20px 55px}.valuation-page .breadcrumbs{font-size:13px}.valuation-heading h1{font-size:30px}.valuation-heading h1 span{display:block}.valuation-lead{font-size:16px}.valuation-meta{font-size:13px;gap:10px}.valuation-intro-note{font-size:14px}.valuation-heading{margin-bottom:28px}.valuation-form{padding:22px 17px}.valuation-section-title h2{font-size:20px}.valuation-fields{grid-template-columns:1fr;gap:18px}.input-unit input{font-size:18px;padding-top:12px;padding-bottom:12px}.value-field label{font-size:16px}.value-field small,.field-help{font-size:14px}.valuation-section-title .subtle-button{margin-left:0}.field-intro{font-size:15px}.valuation-actions{flex-direction:column;align-items:stretch}.valuation-actions .button{font-size:16px}.valuation-actions .subtle-button{align-self:center}.valuation-result-head{padding:22px 20px}.valuation-result-head h2{font-size:22px}#valuation-output{padding:18px 15px}.method-result{padding:18px 15px}.result-value{font-size:23px}.sale-result strong{font-size:20px}.valuation-explanation h2{font-size:24px}.explanation-grid{grid-template-columns:1fr;gap:24px}.listed-calculator{padding:0 18px 22px}.listed-calculator summary{font-size:18px}.listed-calculator .button{width:100%;font-size:15px}.valuation-teaser{padding:25px 20px;gap:20px}.valuation-teaser h3{font-size:23px}.valuation-teaser .button{width:100%;font-size:15px;padding:12px}.valuation-consult{font-size:14px;padding:12px 8px}.valuation-consult .ui-icon{width:17px;height:17px}}
@media print{.valuation-form,.valuation-actions,.valuation-consult,.listed-calculator{display:none}.valuation-workspace{display:block}.valuation-results{position:static;max-height:none;overflow:visible;border:0;box-shadow:none}.valuation-page{padding:0}.method-result{break-inside:avoid}}
.valuation-results{scroll-margin-top:0}

/* motion.css */
/* Editorial motion: the static document remains readable without JavaScript. */
button:focus-visible{outline:3px solid #2b80b7;outline-offset:4px}
.news-bar{background:#f7f9fa;border-bottom:1px solid #dce3e8;position:relative;z-index:1}
.news-inner{max-width:1440px;margin:auto;padding:10px 4.5%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center}
.news-label{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:14px;font-weight:700}
.news-label p{white-space:nowrap;text-wrap:nowrap;flex-shrink:0}
.news-rule{width:3px;height:26px;background:#b08b4c}
.news-kicker{display:none}
.news-window{min-width:0}
.news-list{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.news-item{min-width:0}
.news-item a{display:flex;align-items:baseline;gap:20px;min-height:44px;padding:9px 0;font-size:16px;line-height:1.65}
.news-item time{flex-shrink:0;font:400 13px/1.8 Arial,sans-serif;letter-spacing:.06em;color:#61717d}
.news-item a:hover span{text-decoration:underline;text-underline-offset:5px}
.news-actions{display:flex;gap:16px;align-items:center}
.news-toggle{font:inherit;font-size:14px;min-width:70px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #c9d3da;border-radius:50px;color:#163247;background:transparent;cursor:pointer}
.news-toggle[hidden]{display:none}
.news-toggle:hover{background:#e9eff3}
.news-toggle-icon{height:12px;width:9px;border-left:2px solid;border-right:2px solid}
.news-toggle.is-paused .news-toggle-icon{border:0;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor}
.news-all{font-size:14px;white-space:nowrap;text-decoration:underline;text-underline-offset:5px;min-height:44px;display:flex;align-items:center}
.news-bar.is-enhanced:not(.is-static) .news-window{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 16px,#000 calc(100% - 16px),transparent)}
.news-bar.is-enhanced:not(.is-static) .news-track{display:flex;width:max-content;animation:news-flow var(--news-duration,40s) linear infinite;will-change:transform}
.news-bar.is-enhanced:not(.is-static) .news-list{display:flex;align-items:center;gap:48px;flex-shrink:0;padding-right:48px}
.news-bar.is-enhanced:not(.is-static) .news-item a{white-space:nowrap}
.news-bar.is-suspended .news-track{animation-play-state:paused!important}
.news-bar.is-static .news-copy{display:none}
.news-bar.is-static .news-track{transform:none!important;animation:none!important}
.news-bar.is-static .news-item a{white-space:normal}
@keyframes news-flow{to{transform:translateX(calc(-1 * var(--news-distance,1000px)))}}

/* A fine reading line and short one-time transitions keep the content in focus. */
.reading-line{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;background:#b18b4e;transform:scaleX(0);transform-origin:left center}
.desktop-nav a{position:relative}
.desktop-nav a::after{content:"";position:absolute;bottom:5px;left:0;right:0;height:1px;background:#a37b40;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after{transform:scaleX(1)}
.button{transition:background .22s,box-shadow .22s,transform .22s}
.support-card,.guide-card{transition:transform .35s,box-shadow .35s,border-color .35s}
.support-card{box-shadow:0 8px 28px #12304906}
.faq-toggle::after{transition:transform .25s}
.faq-list summary{transition:color .2s}
.faq-list summary:hover{color:#8b652d}
.reveal-pending{opacity:0;transform:translateY(16px)}
.reveal-pending.is-visible{opacity:1;transform:none;transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.hero-visual.is-visible .hero-photo{animation:photo-settle 1.7s cubic-bezier(.2,.6,.3,1) both}
.hero-copy .eyebrow-rule{animation:rule-enter .8s ease both;transform-origin:left}
.hero-emphasis{background-repeat:no-repeat;animation:emphasis-enter 1s .15s ease both}
@keyframes photo-settle{from{transform:scale(1.055)}to{transform:scale(1)}}
@keyframes rule-enter{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes emphasis-enter{from{background-size:0% 100%}to{background-size:100% 100%}}
.consultation-panel:not([hidden]){animation:panel-enter .22s ease-out}
@keyframes panel-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* The home journal reads as an editorial section, with a clear entry to each article. */
.home-guides{background:#fff}
.journal-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.journal-heading h2{margin-top:18px}
.journal-heading .text-link{flex-shrink:0;margin-bottom:8px}
.journal-list{margin-top:40px;border-top:1px solid #cbd6df}
.journal-row{position:relative;display:grid;grid-template-columns:175px minmax(0,1fr) auto;gap:35px;align-items:center;padding:34px 0;border-bottom:1px solid #cbd6df;transition:background .3s}
.journal-meta{display:grid;gap:10px;align-self:start;padding-top:5px}
.journal-meta time{font:400 17px/1.6 Georgia,serif;letter-spacing:.04em;color:#52636d}
.journal-meta>span{font-size:13px;color:#795d2d}
.journal-copy h3{font-size:clamp(20px,1.8vw,25px);line-height:1.7;letter-spacing:0}
.journal-copy h3 a::after{content:"";position:absolute;inset:0}
.journal-copy>p{font-size:16px;line-height:1.9;color:#52636d;margin-top:14px}
.journal-read{font-size:14px;white-space:nowrap;border-bottom:1px solid #adbac3;padding:8px 0}
.journal-row:focus-within{outline:3px solid #2b80b7;outline-offset:5px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .button:not([aria-disabled="true"]):hover{transform:translateY(-2px);box-shadow:0 8px 22px #102c3f24}
 .support-card:hover,.guide-card:hover{transform:translateY(-5px);box-shadow:0 16px 35px #12304910;border-top-color:#b08b4c}
 .journal-row:hover{background:#f5f8fa}
}
@media(max-width:960px){
 .news-inner{padding:10px 30px;gap:18px}
 .news-kicker{display:none}
 .journal-row{grid-template-columns:135px minmax(0,1fr);gap:24px}
 .journal-read{display:none}
}
@media(max-width:640px){
 .news-inner{grid-template-columns:1fr auto;gap:0 14px;padding:4px 20px 9px}
 .news-label{gap:9px;font-size:14px}
 .news-rule{height:18px;width:2px}
 .news-kicker{display:inline;font:500 10px/1.5 Arial,sans-serif;letter-spacing:.12em;color:#6b7b87;margin-left:3px}
 .news-actions{grid-column:2;grid-row:1;gap:15px}
 .news-toggle{min-width:66px;min-height:44px;font-size:13px;border:0}
 .news-all{font-size:13px}
 .news-window{grid-column:1/-1;grid-row:2}
 .news-item a{gap:14px;font-size:15px;min-height:40px;padding:6px 0}
 .news-item time{font-size:12px}
 .news-bar.is-static .news-item a{display:grid;gap:3px}
 .news-bar.is-static .news-list{gap:12px}
 .journal-heading{display:block}
 .journal-heading .text-link{margin-top:17px;margin-bottom:0;min-height:44px}
 .journal-list{margin-top:22px}
 .journal-row{display:block;padding:24px 0}
 .journal-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 15px;padding:0;margin-bottom:12px}
 .journal-meta time{font-size:15px}
 .journal-copy h3{font-size:21px}
 .journal-copy>p{margin-top:12px}
}
@media(max-width:360px){.news-kicker{display:none}.news-inner{padding-left:16px;padding-right:16px}}
@media(prefers-reduced-motion:reduce){
 .reveal-pending{opacity:1!important;transform:none!important}
 .news-track{animation:none!important;transform:none!important}
 .news-copy{display:none!important}
 .news-bar .news-toggle{display:none}
 .news-bar.is-enhanced .news-window{overflow:visible!important;mask-image:none!important}
 .news-bar.is-enhanced .news-track{display:block!important;width:auto!important}
 .news-bar.is-enhanced .news-list{display:grid!important;padding:0!important;gap:12px!important}
 .news-bar.is-enhanced .news-item a{white-space:normal!important}
}
@media print{.reveal-pending{opacity:1!important;transform:none!important}.news-copy,.news-toggle,.reading-line{display:none!important}.news-bar.is-enhanced .news-track{display:block;width:auto;animation:none;transform:none}.news-bar.is-enhanced .news-list{display:block;padding:0}.news-bar.is-enhanced .news-item a{white-space:normal}.news-bar.is-enhanced .news-window{overflow:visible;mask-image:none}}

/* conversion.css */
/* Financial consultation takes priority throughout the existing LP. */
.conversion-lp .hero{grid-template-columns:1.08fr 1fr}
.conversion-lp .hero-copy{padding-top:38px;padding-bottom:36px}
.conversion-lp .hero-audience{font-size:14px;margin-top:22px;gap:7px 12px}
.conversion-lp .hero h1{font-size:clamp(32px,3.55vw,54px);letter-spacing:0;line-height:1.65;margin-top:19px}
.conversion-lp .hero-subtitle{font-size:19px;line-height:1.8;margin-top:20px}
.conversion-lp .hero-subtitle>span{display:inline-block}
.conversion-lp .hero-description{margin-top:14px;max-width:33em}
.hero-assurances{display:flex;flex-wrap:wrap;gap:7px 17px;padding:0;margin:22px 0 0;list-style:none;font-size:14px;font-weight:600}
.hero-assurances li{padding-left:11px;border-left:2px solid #b18e50;line-height:1.65}
.conversion-lp .hero-action{margin-top:23px}
.conversion-lp .hero-action .button{min-width:310px}
.conversion-lp .action-note{font-size:14px;line-height:1.8;max-width:33em;color:var(--muted)}
.conversion-lp .action-note span{display:block;font-size:13px;margin-top:4px}
.conversion-lp .hero-visual{min-height:640px}
.conversion-lp .service-strip{grid-template-columns:repeat(3,1fr)}
.conversion-lp .support-focus{line-height:1.8}
.offer-heading{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center}
.offer-heading h2{margin-top:20px}
.offer-price{display:flex;flex-direction:column;justify-content:center;text-align:center;padding:22px 34px;min-width:220px;border-left:1px solid var(--line);font-size:14px}
.offer-price strong{font-size:48px;line-height:1.4;letter-spacing:.06em;color:#8b6328;margin:6px 0}
.consultation-agenda{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:38px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.consultation-agenda li{min-width:0;padding:30px 28px 32px 0}
.consultation-agenda li+li{border-left:1px solid var(--line);padding-left:28px}
.agenda-number{display:block;color:#977037;font:italic 24px/1.4 Georgia,serif;margin-bottom:12px}
.consultation-agenda h3{font-size:20px;line-height:1.7}
.consultation-agenda p{font-size:16px;color:var(--muted);margin-top:12px}
.offer-bottom{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:27px}
.offer-bottom p{font-size:16px;max-width:34em}.offer-bottom .button{flex-shrink:0}
.engagement-section{background:#102c40;color:white}
.engagement-section .eyebrow{color:#e0bd78}.engagement-section .heading-description{color:#d4dfe8}
.engagement-flow{padding:0;margin:44px 0 35px;display:grid;grid-template-columns:repeat(4,1fr);list-style:none;gap:30px}
.engagement-flow li{min-width:0;border-top:1px solid #ffffff40;padding-top:22px}
.engagement-flow li>span{font:24px/1.3 Georgia,serif;color:var(--gold)}
.engagement-flow h3{font-size:19px;line-height:1.7;margin-top:16px}
.engagement-flow p{font-size:16px;line-height:1.9;color:#d4dfe8;margin-top:12px}
.fee-explanation{display:grid;grid-template-columns:.85fr 1.15fr;background:#ffffff0b;border:1px solid #ffffff30}
.fee-explanation>div{padding:25px 28px}.fee-explanation>div+div{border-left:1px solid #ffffff30}
.fee-explanation span{font-size:14px;color:#e1c58e;display:block}
.fee-explanation strong{display:block;font-size:24px;line-height:1.6;margin:8px 0}
.fee-explanation p{font-size:16px;color:#d4dfe8}
.conversion-lp .mid-cta{margin-top:44px;margin-bottom:0}
.related-services{background:#f5f7f8}.related-kicker{font-size:16px;font-weight:700;border-bottom:1px solid #c8d5dd;padding-bottom:17px}
.related-services .grant-support{margin-top:34px}.related-services .valuation-teaser{margin-bottom:0}
.conversion-lp .company{padding-top:88px;padding-bottom:88px}
.conversion-lp .home-guides{padding-top:64px;padding-bottom:64px}
.conversion-lp .contact-action-title{font-size:18px}
.panel-intro{font-size:15px;line-height:1.8;margin:0 0 16px;color:#e8eff4}
.contact-channel-list .channel-link[aria-disabled="true"]{background:#193448;color:#c3d0da;border:1px solid #647b8d;box-shadow:none}
.contact-channel-list .channel-link[aria-disabled="true"] .channel-detail{color:#f1d39c;font-size:14px}
.panel-fee{font-size:14px}.consultation-panel .panel-note{font-size:14px}
@media(max-width:1000px){.conversion-lp .hero{grid-template-columns:1fr}.conversion-lp .hero-copy{max-width:760px}.conversion-lp .hero-visual{min-height:420px}.engagement-flow{grid-template-columns:1fr 1fr}.offer-bottom{align-items:flex-start;flex-direction:column}.conversion-lp .hero h1{font-size:44px}}
@media(max-width:640px){
 .conversion-lp .hero-copy{padding:27px 20px 32px}.conversion-lp .hero-audience{font-size:14px;margin-top:16px;line-height:1.7}.conversion-lp .hero-audience span{font-size:13px}
 .conversion-lp .hero h1{font-size:clamp(27px,7.8vw,35px);line-height:1.65;margin-top:18px}.conversion-lp .hero-subtitle{font-size:17px;margin-top:17px}.conversion-lp .hero-description{line-height:1.85}
 .conversion-lp .hero-subtitle>span{display:block}
 .hero-assurances{gap:7px 12px;margin-top:17px;font-size:14px}.conversion-lp .hero-action .button{min-width:0;width:100%;font-size:16px}.conversion-lp .action-note{text-align:left}
 .conversion-lp .hero-visual{min-height:330px}.conversion-lp .service-strip{grid-template-columns:1fr;padding-top:8px;padding-bottom:8px}.conversion-lp .service-strip div{font-size:15px;padding:10px 0}
 .offer-heading{grid-template-columns:1fr;gap:24px}.offer-heading h2{font-size:clamp(23px,6.5vw,28px)}.offer-price{min-width:0;border-left:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 15px;display:grid;grid-template-columns:1fr auto;gap:0 12px;text-align:left;align-items:center}.offer-price strong{font-size:32px;grid-column:2;grid-row:1/3;margin:0}.offer-price span{font-size:14px}
 .consultation-agenda{grid-template-columns:1fr;margin-top:24px;border-top:0}.consultation-agenda li,.consultation-agenda li+li{padding:24px 0;border-left:0;border-top:1px solid var(--line)}.consultation-agenda h3{font-size:19px}.agenda-number{font-size:21px;margin-bottom:9px}.consultation-agenda p{margin-top:9px}
 .offer-bottom{gap:19px;margin-top:24px}.offer-bottom .button{width:100%;padding:14px 12px}.engagement-section h2{font-size:clamp(23px,6.3vw,28px)}.engagement-flow{grid-template-columns:1fr;gap:25px;margin-top:30px}.engagement-flow li{display:grid;grid-template-columns:35px minmax(0,1fr);gap:8px 13px;padding-top:22px}.engagement-flow li>span{grid-column:1;grid-row:1/3;font-size:22px}.engagement-flow h3{margin:0;font-size:19px}.engagement-flow p{grid-column:2;margin:0}
 .fee-explanation{grid-template-columns:1fr}.fee-explanation>div{padding:22px 20px}.fee-explanation>div+div{border-left:0;border-top:1px solid #ffffff30}.fee-explanation strong{font-size:21px}.conversion-lp .mid-cta{margin-top:30px}.conversion-lp .company{padding-top:58px;padding-bottom:58px}.conversion-lp .home-guides{padding-top:48px;padding-bottom:48px}
 .panel-intro{font-size:14px;margin-bottom:13px}.consultation-panel .panel-header h2{font-size:18px}.consultation-dock{width:252px;padding:8px 10px 10px}.consultation-dock .button{min-height:46px;font-size:15px}.dock-caption{font-size:12px}.consultation-panel{bottom:103px;max-height:calc(100dvh - 117px)}
}
@media(prefers-reduced-motion:reduce){.conversion-lp{scroll-behavior:auto}}

/* Six services share one consultation flow. */
.conversion-lp .service-index{grid-template-columns:repeat(6,minmax(0,1fr));padding-top:20px;padding-bottom:20px}
.service-index a{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;font-weight:600;min-height:48px;border-right:1px solid var(--line);text-decoration:none}
.service-index a:last-child{border-right:0}.service-index a:hover{color:#8b6328;background:#faf7f0}
.service-index a:focus-visible,.service-resource:focus-visible{outline:2px solid #997537;outline-offset:4px}
.service-card{scroll-margin-top:100px}
.service-card .support-icon.scene-icon,.service-card .support-icon.service-line-icon{position:relative;inset:auto;width:100%;height:140px;margin:10px auto 0;flex-shrink:0;background:radial-gradient(ellipse at 50% 60%,#eaf1f5 0%,#fff 67%)}
.service-line-icon{display:grid;place-items:center}.service-line-icon svg{display:block;width:76px;height:76px;padding:12px;color:#55768a;background:linear-gradient(145deg,#fff,#e8eef1);border:1px solid #d6e2e8;border-bottom:5px solid #b5c8d2;border-radius:12px;box-shadow:8px 12px 18px #284b6520;transform:rotate(-6deg)}
.service-line-icon:after{content:'';position:absolute;width:21px;height:21px;border-radius:5px;background:linear-gradient(135deg,#eedaaa,#caa04f);left:calc(50% + 26px);top:88px;box-shadow:3px 4px 7px #284b651a}
.service-checks{width:100%;padding:17px 0 18px;margin:auto 0 0;list-style:none;border-top:1px solid var(--line);font-size:14px;line-height:1.9;order:2}
.service-checks li{padding-left:13px;position:relative}.service-checks li:before{content:'';position:absolute;left:0;top:.8em;width:4px;height:4px;background:#a37b40}
.service-card .service-consult{width:100%;min-height:48px;padding:12px 8px;background:#f7f4ec;border:1px solid #d5bf97;color:var(--navy);font-size:14px;line-height:1.65;order:3}
.service-card .service-consult:hover{background:#efe5d0}.service-resource{font-size:13px;line-height:1.8;text-underline-offset:4px;margin:0 0 18px;order:1}
.service-scope{margin-top:28px;padding-top:23px;border-top:1px solid #cad6de}.service-scope p:first-child{font-weight:600;font-size:18px}.service-scope p+p{font-size:15px;color:var(--muted);margin-top:8px;max-width:65em}
.consultation-topic-select{margin:0 0 18px}.consultation-topic-select label{display:block;font-size:14px;margin-bottom:8px;color:#e8eff4}
.consultation-topic-select select{width:100%;min-height:48px;background:#fff;color:#173248;border:1px solid #a9bccb;border-radius:5px;padding:10px 32px 10px 12px;font:inherit;font-size:16px;line-height:1.6}
.consultation-topic-select select:focus-visible{outline:3px solid #e0bd78;outline-offset:3px}
@media(min-width:641px) and (max-width:1000px){.conversion-lp .service-index{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:10px}.service-index a:nth-child(3){border-right:0}.conversion-lp .support-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.conversion-lp .service-index{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px 20px;gap:0 14px}.service-index a{justify-content:flex-start;font-size:15px;padding:8px 0;border-right:0;border-bottom:1px solid var(--line);gap:9px}.service-index a:nth-last-child(-n+2){border-bottom:0}.service-index span{font-size:15px;width:22px}.service-card .service-consult{font-size:15px;min-height:50px}.service-checks{font-size:14px}.service-resource{font-size:14px}.service-scope p:first-child{font-size:17px}.service-scope p+p{font-size:15px}.consultation-topic-select{margin-bottom:15px}}

/* A named representative connects the service explanation to the first consultation. */
.representative-intro-link{display:flex;align-items:center;gap:14px;max-width:390px;margin-top:27px;padding-top:20px;border-top:1px solid var(--line);text-decoration:none}
.representative-intro-link>img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:71% 24%;flex-shrink:0;border:1px solid #d6dfe4}
.representative-intro-link>span{min-width:0}.intro-role{display:block;font-size:12px;line-height:1.8;color:var(--muted)}
.intro-name{display:flex;flex-wrap:wrap;align-items:center;gap:3px 19px;font-size:17px;font-weight:600;line-height:1.8}.intro-more{font-size:12px;font-weight:400;text-decoration:underline;text-underline-offset:4px}
.representative-intro-link:hover .intro-more{color:#8b6328}.representative-intro-link:focus-visible{outline:2px solid #997537;outline-offset:5px}
.representative-section{background:#fcfaf6;border-top:1px solid #ece6db;border-bottom:1px solid #ece6db;scroll-margin-top:95px}
.representative-inner{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:76px;align-items:center}
.representative-portrait{margin:0;min-width:0;align-self:center}
.representative-photo{aspect-ratio:4/4.6;overflow:hidden;background:#eee9ec;border-radius:3px 3px 0 0}
.representative-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:74% center}
.representative-portrait figcaption{padding:23px 0 0;border-top:3px solid #bd995b}
.representative-company{display:block;font-size:14px;line-height:1.8;color:var(--muted)}
.representative-position{font-size:14px;margin-right:20px;vertical-align:middle}.representative-portrait strong{font-size:27px;font-weight:600;letter-spacing:.08em;vertical-align:middle;line-height:1.8}
.representative-copy{min-width:0}.representative-copy .eyebrow{letter-spacing:.14em;font-size:13px}
.representative-copy h2{font-size:clamp(27px,2.6vw,36px);line-height:1.75;margin:19px 0 27px;letter-spacing:.015em}.representative-copy h2 span{display:block}
.representative-message p{font-size:16px;line-height:2;color:#435765;margin:0 0 18px}.representative-message p:last-child{margin-bottom:0}.representative-message strong{font-weight:600;color:#18384e}
.representative-action{padding-top:25px;margin-top:27px;border-top:1px solid #dcd6ca}.representative-action>p{font-size:15px;line-height:1.85;margin-bottom:15px;font-weight:600}.representative-action>.button{min-width:276px;font-size:16px}.representative-action>span{display:block;font-size:12px;line-height:1.9;color:var(--muted);margin-top:12px}
@media(min-width:761px) and (max-width:1100px){.representative-inner{gap:38px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.representative-copy h2{font-size:27px}.representative-photo{aspect-ratio:3/4}}
@media(max-width:760px){.representative-inner{grid-template-columns:1fr;gap:34px;padding-top:48px;padding-bottom:48px}.representative-portrait{max-width:440px;width:100%;margin:0 auto}.representative-photo{aspect-ratio:1.1}.representative-photo img{object-position:74% 24%}.representative-portrait figcaption{padding-top:15px}.representative-company{font-size:13px}.representative-position{font-size:13px;margin-right:16px}.representative-portrait strong{font-size:25px}.representative-copy h2{font-size:clamp(22px,6vw,29px);margin:15px 0 22px;line-height:1.75;letter-spacing:0}.representative-message p{font-size:16px;line-height:1.95;margin-bottom:17px}.representative-action{margin-top:23px;padding-top:22px}.representative-action>.button{width:100%;min-width:0}.representative-action>p{font-size:15px}.representative-section{scroll-margin-top:80px}.representative-intro-link{margin-top:24px;padding-top:18px;gap:12px}.intro-role{font-size:11px}.intro-name{font-size:16px;gap:2px 12px}.intro-more{font-size:12px}}
.conversion-lp .hero h1 .hero-subject { display:block; margin-bottom:16px; font-size:clamp(15px,1.4vw,21px); line-height:1.7; letter-spacing:.035em; font-weight:500; color:#526977; }

/* refined-icons.css */
.ui-icon{width:20px;height:20px;flex-shrink:0;display:inline-block;vertical-align:middle}
.button{gap:10px}
.channel-label{display:inline-flex;align-items:center;gap:10px}
.channel-label .ui-icon{width:24px;height:24px;padding:1px;filter:drop-shadow(0 1px 0 #ffffff40)}
.panel-close .ui-icon{width:21px;height:21px;transition:transform .2s}
.panel-close:hover .ui-icon{transform:rotate(90deg)}
.online-tag{display:inline-flex;align-items:center;gap:9px}
.online-tag .ui-icon{width:16px;height:16px}
.news-all{gap:7px}
.news-all .ui-icon{width:16px;height:16px}
.news-toggle-icon,.news-toggle.is-paused .news-toggle-icon{border:0;width:16px;height:16px;position:relative;display:block}
.news-toggle-icon .ui-icon{position:absolute;inset:0;width:16px;height:16px;stroke-width:2}
.news-toggle-icon .icon-play{display:none}
.news-toggle.is-paused .icon-play{display:block}
.news-toggle.is-paused .icon-pause{display:none}
.faq-toggle{width:20px;height:20px;margin-top:4px}
.faq-list summary{grid-template-columns:24px minmax(0,1fr) 20px}
.faq-toggle::before,.faq-toggle::after{display:none}
.faq-toggle .ui-icon{width:20px;height:20px}
.icon-vertical{transition:transform .25s;transform-origin:12px 12px}
details[open] .icon-vertical{transform:scaleY(0)}
.consultation-dock{border-color:#d6dfe5;box-shadow:0 2px 4px #102c3f06,0 12px 35px #102c3f20,inset 0 1px #fff}
.button-gold{background:linear-gradient(135deg,#e9cd92,#ddba75);box-shadow:inset 0 1px #fff6,inset 0 -1px #97713c22}
.button-gold:hover{background:linear-gradient(135deg,#f1dbaa,#e8c786)}
.channel-link[aria-disabled="true"]{box-shadow:none}
.header-cta .ui-icon{width:17px;height:17px}
@media(max-width:360px){.header-cta{gap:7px}.header-cta .ui-icon{width:15px;height:15px}}

/* The 3D canvases belong to their own layout boxes; no fixed ancestor transforms. */
.hero-visual{display:flex;flex-direction:column;gap:0;padding:28px 7% 25px;min-height:725px;background:radial-gradient(ellipse at 45% 36%,#2c5166 0%,#142f43 55%,#0c2233 100%)}
.hero-visual>.hero-photo{opacity:.08;filter:grayscale(1);pointer-events:none}
.hero-visual>.visual-shade{background:linear-gradient(180deg,#102e4200,#09203250);pointer-events:none}
.hero-visual .visual-topline,.hero-visual .visual-message,.hero-visual .finance-note,.hero-visual .visual-caption{position:relative;inset:auto;width:100%;margin:0;max-width:none}
.hero-visual .visual-topline{font-size:10px}
.hero-visual .visual-message{font-size:clamp(25px,2.45vw,35px);margin-top:27px;line-height:1.7;z-index:1}
.hero-visual .finance-note{padding:16px 0 7px;margin-top:0}
.hero-visual .note-label{font-size:16px;margin-bottom:8px}
.hero-visual .note-row{padding:7px 0}
.hero-visual .visual-caption{margin-top:16px;font-size:11px}
.scene-frame{position:relative;isolation:isolate;overflow:hidden}
.scene-hero{width:100%;height:270px;flex:1 0 240px;min-height:240px;margin:1px 0 10px}
.scene-frame canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;opacity:0;transition:opacity .4s}
.scene-frame.is-rendered canvas{opacity:1}
.scene-frame.is-rendered .scene-fallback{opacity:0;visibility:hidden}
.scene-fallback{transition:opacity .4s;width:100%;height:100%;object-fit:contain}
.scene-hero .scene-fallback{object-fit:cover;border-radius:12px;opacity:.6}
.scene-controls{position:relative;align-self:flex-end;margin-top:-7px;margin-bottom:14px;z-index:2}
.scene-toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border:1px solid #ffffff2b;border-radius:24px;background:#09203255;color:#dfebf2;font:inherit;font-size:12px;cursor:pointer}
.scene-toggle[hidden]{display:none}
.scene-toggle:hover{background:#ffffff12}
.scene-toggle .ui-icon{width:15px;height:15px}
.scene-toggle .icon-play{display:none}
.scene-toggle.is-paused .icon-pause{display:none}
.scene-toggle.is-paused .icon-play{display:block}
.support-card{border:1px solid #dce5eb;border-top:2px solid #19394f;border-radius:10px;padding:28px;box-shadow:0 3px 7px #15394f04,0 16px 38px #15394f07;overflow:hidden}
.support-card .support-icon.scene-icon{position:relative;inset:auto;width:100%;height:165px;flex-shrink:0;margin:10px auto 0;color:#34596f;background:radial-gradient(ellipse at 50% 60%,#eaf1f5 0%,#fff 67%)}
.scene-icon .scene-fallback{max-width:75px;max-height:75px;position:absolute;inset:0;margin:auto}
.support-card h3{margin-top:8px}
.support-category{background:#f0f4f6;padding:4px 10px;border-radius:20px;font-size:12px;letter-spacing:.02em}
@media(max-width:960px){
 .hero-visual{min-height:0;padding:28px max(35px,calc((100% - 650px)/2));}
 .hero-visual .visual-message{font-size:30px;margin-top:22px}
 .scene-hero{flex:none;height:285px;max-width:540px;margin:0 auto 8px}
 .hero-visual .finance-note{max-width:650px}
 .support-card .support-icon.scene-icon{width:190px;height:165px;margin:2px auto 4px}
 .support-card h3{margin-top:10px}
}
@media(max-width:640px){
 .hero-visual{padding:24px 20px}
 .hero-visual .visual-message{font-size:27px;line-height:1.65;margin-top:20px}
 .scene-hero{height:240px;min-height:240px;margin:0 auto 4px}
 .scene-controls{margin-bottom:14px;margin-top:-8px}
 .scene-toggle{font-size:12px}
 .support-card{padding:22px 20px}
 .support-card .support-icon.scene-icon{height:150px;width:190px;margin:0 auto}
 .support-card h3{font-size:19px}
 .hero-visual .visual-caption{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.scene-frame canvas,.scene-fallback{transition:none}.scene-toggle{display:none!important}.panel-close:hover .ui-icon{transform:none}}

/* Grant consultation extends the existing navy/gold service design. */
.hero-grant-link{display:inline-block;margin-top:14px;font-size:15px;font-weight:600;line-height:1.8;text-decoration:underline;text-decoration-color:#c5a163;text-underline-offset:5px}
.service-strip{grid-template-columns:repeat(4,minmax(0,1fr));padding-left:3%;padding-right:3%}
.service-strip div{gap:12px;font-size:14px}
.service-strip a{text-decoration:underline;text-decoration-color:#c5a163;text-underline-offset:5px}
.grant-support{margin-top:48px;padding:38px;border:1px solid #d5e0e7;border-radius:12px;background:#fff;scroll-margin-top:110px}
.grant-heading{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end;margin-bottom:26px}
.grant-heading .eyebrow{margin-bottom:14px;font-size:12px}
.grant-heading h2{font-size:clamp(24px,2.5vw,32px);line-height:1.65;letter-spacing:.02em}
.grant-heading h2 span{display:block}
.grant-heading>p{font-size:16px;line-height:1.9;color:var(--muted)}
.grant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.grant-card{display:flex;flex-direction:column;padding:26px;border-radius:8px;background:#f3f7f9;border-top:2px solid #b99a64}
.grant-tag{font-size:14px;font-weight:600;color:#66634e;margin-bottom:8px}
.grant-card h3{font-size:24px;line-height:1.6;margin-bottom:14px}
.grant-card>p:not(.grant-tag){font-size:16px;line-height:1.9;color:var(--muted);margin-bottom:24px}
.grant-card .button{margin-top:auto;font-size:16px;min-height:52px;line-height:1.6;padding:13px 14px}
.grant-guidance{margin-top:24px}
.grant-guidance>p{font-size:16px;line-height:1.9;color:var(--muted)}
.grant-guidance strong{display:block;color:var(--navy);margin-bottom:4px}
.grant-guidance .grant-note{font-size:14px;margin-top:12px}
.contact-topic-links{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.contact-topic-links a{display:inline-flex;align-items:center;min-height:44px;border:1px solid #ffffff55;border-radius:5px;padding:7px 12px;font-size:15px}
.contact-topic-links a:hover{background:#ffffff12}
.consultation-topics{border:0;padding:0;margin:0 0 16px;min-width:0}
.consultation-topics legend{padding:0;margin-bottom:10px;font-size:14px;font-weight:600;color:#dfc188}
.topic-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.topic-options label{display:flex;align-items:center;gap:7px;padding:9px 10px;min-height:44px;font-size:14px;line-height:1.5;border:1px solid #ffffff44;border-radius:5px;cursor:pointer;color:#e5edf2}
.topic-options label:has(input:checked){background:#e8c98c;color:#112c3e;border-color:#e8c98c}
.topic-options label:focus-within{outline:2px solid #fff;outline-offset:2px}
.topic-options input{accent-color:#16374b;width:16px;height:16px;margin:0;flex-shrink:0}
@media(max-width:960px){.service-strip{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px}.service-strip div:nth-child(2){border-right:0}.grant-support{padding:28px}.grant-heading{grid-template-columns:1fr;gap:18px}.grant-card{padding:22px}.grant-card .button{font-size:15px}}
@media(max-width:640px){.hero-grant-link{font-size:15px;line-height:1.9}.service-strip{grid-template-columns:1fr;row-gap:0;padding:12px 20px}.service-strip div{font-size:16px;gap:18px}.grant-support{margin-top:30px;padding:24px 0;border-left:0;border-right:0;border-radius:0;background:transparent}.grant-heading h2{font-size:24px;letter-spacing:0}.grant-heading>p br{display:none}.grant-grid{grid-template-columns:1fr;gap:18px}.grant-card{padding:22px 17px;background:#fff}.grant-card h3{font-size:23px}.grant-card .button{font-size:15px;padding-left:10px;padding-right:10px}.grant-card .ui-icon{width:18px;height:18px}.topic-options{gap:7px}.topic-options label{padding:8px 7px;gap:5px}}

/* content-design.css */
/* Proposal: load after articles.css / conversion.css / valuation.css.
   Scope is generated non-LP pages only; the existing TOP stays untouched. */
.content-site {
  --content-paper: #fcfaf6;
  --content-border: #d9e1e6;
  --content-gold-ink: #85622f;
  background: #fff;
}
.content-site main { overflow-wrap: break-word; }
.content-site .article-page,
.content-site .guide-index {
  max-width: 1180px;
  margin-inline: auto;
  padding: 40px 40px 80px;
}
.content-site .breadcrumbs { margin-bottom: 22px; font-size: 13px; gap: 7px 12px; }
.content-site .breadcrumbs a { text-decoration-color: #bcc8d0; }
.content-site .article-heading {
  position: relative;
  padding: 30px 0 43px;
  margin-bottom: 44px;
  border-bottom: 1px solid var(--content-border);
}
.content-site .article-heading::after {
  content: "";
  position: absolute;
  width: 72px;
  height: 3px;
  background: #b38a4d;
  bottom: -2px;
  left: 0;
}
.content-site .guide-category {
  color: var(--content-gold-ink);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .04em;
  line-height: 1.8;
}
.content-site .article-heading h1 {
  max-width: 24em;
  font-size: clamp(30px, 3.15vw, 43px);
  line-height: 1.55;
  letter-spacing: .01em;
  margin: 17px 0 23px;
  word-break: normal;
  line-break: strict;
  text-wrap: pretty;
}
.content-site .article-description {
  max-width: 47em;
  color: #435765;
  font-size: 18px;
  line-height: 1.95;
  margin: 0 0 25px;
}
.content-site .guide-meta { font-size: 12px; line-height: 1.9; color: #60717d; }
.content-site .reading-grid,
.content-site .policy-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 64px;
  align-items: start;
}
.content-site .reading-column,
.content-site .policy-layout > * { min-width: 0; }
.content-site .article-toc {
  margin: 0 0 44px;
  padding: 24px 28px 25px;
  background: var(--content-paper);
  border: 1px solid #e5dfd4;
  border-top: 3px solid #b08b4c;
}
.content-site .article-toc > strong { font-size: 15px; letter-spacing: .025em; }
.content-site .article-toc ol { margin-top: 12px; padding-left: 21px; }
.content-site .article-toc li { padding: 5px 0; font-size: 15px; line-height: 1.85; }
.content-site .article-toc a { text-decoration: none; }
.content-site .article-toc a:hover { text-decoration: underline; text-underline-offset: 4px; }
.content-site .article-body {
  color: #293f4e;
  font-size: 17px;
  line-height: 2;
  letter-spacing: .005em;
  overflow-wrap: anywhere;
  word-break: normal;
  line-break: strict;
}
.content-site .article-body > p:first-child { margin-top: 0; }
.content-site .article-body p { margin: 23px 0; }
.content-site .article-body h2 {
  color: var(--navy);
  font-size: 27px;
  line-height: 1.65;
  letter-spacing: 0;
  margin: 56px 0 23px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--content-border);
  scroll-margin-top: 116px;
}
.content-site .article-body h3 { color: var(--navy); font-size: 21px; line-height: 1.7; margin: 32px 0 16px; }
.content-site .article-body :is(ul, ol) { padding-left: 1.45em; }
.content-site .article-body li { margin: 12px 0; padding-left: .2em; }
.content-site .article-body li::marker { color: #85622f; font-weight: 600; }
.content-site .article-body a { color: #285b79; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.content-site .article-body strong { color: #153246; font-weight: 700; }
.content-site .article-body blockquote { background: #f4f6f7; padding: 2px 23px; }
.content-site .article-table { margin: 30px 0; }
.content-site .article-table table { font-size: 15px; line-height: 1.8; }
.content-site .article-table th,
.content-site .article-table td {
  padding: 15px 14px;
  vertical-align: top;
  text-align: left;
  font-variant-numeric: tabular-nums;
}
.content-site .article-table thead { background: #edf2f5; color: #29465a; }
.content-site .article-table tbody th { font-weight: 600; }
/* A last row is not always a total: require an explicit is-total class. */
.content-site .article-table tbody tr:last-child { font-weight: 400; background: transparent; }
.content-site .article-table tr.is-total { background: #f4f6f8; font-weight: 700; }
.content-site .article-table :is(th, td).is-numeric { text-align: right; white-space: nowrap; }
.content-site .article-sources { margin-top: 52px; padding-top: 1px; }
.content-site .article-sources h2 { font-size: 22px; }
.content-site .article-sources li { font-size: 14px; line-height: 1.85; }
.content-site .article-sources small { color: #60717d; font-size: 12px; margin-top: 5px; }

/* One quiet, reusable desktop consultation card. Do not label the person as author. */
.content-site .reading-support {
  position: sticky;
  top: 116px;
  padding: 25px 24px 24px;
  background: var(--content-paper);
  border: 1px solid #e5dfd4;
  border-top: 3px solid #b08b4c;
  box-shadow: 0 8px 22px #142f4006;
}
.content-site .reading-support .eyebrow { color: var(--content-gold-ink); font-size: 11px; letter-spacing: .08em; }
.content-site .reading-support h2,
.content-site .reading-support h3 { font-size: 20px; line-height: 1.7; letter-spacing: 0; margin: 15px 0 13px; }
.content-site .reading-support p { color: #435765; font-size: 14px; line-height: 1.85; margin: 12px 0; }
.content-site .reading-support .support-person {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-bottom: 19px;
  margin-bottom: 21px;
  border-bottom: 1px solid #ded8ce;
}
.content-site .reading-support .support-person img,
.content-site .reading-support > img {
  width: 66px;
  height: 66px;
  object-fit: cover;
  object-position: 71% 24%;
  border-radius: 50%;
  flex-shrink: 0;
}
.content-site .support-person span { display: block; font-size: 11px; line-height: 1.8; color: #52636d; }
.content-site .support-person strong { display: block; font-size: 17px; line-height: 1.8; color: #19384d; font-weight: 600; }
.content-site .reading-support ul { list-style: none; padding: 0; margin: 16px 0 21px; }
.content-site .reading-support li { position: relative; padding-left: 13px; margin: 8px 0; color: #435765; font-size: 14px; line-height: 1.8; }
.content-site .reading-support li::before { content: ""; position: absolute; left: 0; top: .8em; width: 4px; height: 4px; background: #9b773e; }
.content-site .reading-support .button { width: 100%; min-height: 49px; padding: 12px 9px; font-size: 15px; line-height: 1.6; gap: 8px; }
.content-site .reading-support small { display: block; font-size: 12px; line-height: 1.85; color: #60717d; margin-top: 12px; }

/* Full-width closing CTA; the existing consultation panel handles the action. */
.content-site .article-cta {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  align-items: start;
  gap: 46px;
  padding: 42px 44px;
  margin-top: 64px;
  color: white;
  background: #122f44;
  border: 0;
  border-top: 3px solid #b7955d;
  box-shadow: none;
}
.content-site .article-cta .eyebrow { font-size: 12px; letter-spacing: .08em; color: #e6c88f; }
.content-site .article-cta h2 { color: #fff; font-size: 29px; line-height: 1.65; margin: 16px 0 18px; letter-spacing: 0; }
.content-site .article-cta p { color: #dae4eb; font-size: 15px; line-height: 1.9; }
.content-site .article-cta-action { min-width: 0; padding-left: 31px; border-left: 1px solid #ffffff2e; }
.content-site .article-cta .contact-pending { color: #f0d29a; font-size: 14px; margin: 0 0 16px; }
.content-site .article-cta .button { display: flex; width: 100%; min-height: 54px; font-size: 16px; padding: 14px 12px; margin: 0; }
.content-site .article-cta-action ol { padding-left: 21px; margin: 17px 0 0; color: #dae4eb; font-size: 13px; line-height: 1.9; }
.content-site .article-cta-action li { margin-top: 4px; }
.content-site .article-cta .article-fee-note { font-size: 12px; line-height: 1.85; margin-top: 15px; color: #c4d2dc; }
.content-site .article-related { margin-top: 42px; padding-top: 25px; }
.content-site .article-related h2 { font-size: 21px; }
.content-site .article-related ul { list-style: none; padding: 0; margin-top: 14px; }
.content-site .article-related li { padding: 15px 0; border-bottom: 1px solid #e3e8ec; margin: 0; }
.content-site .article-related a { text-decoration-color: #b9c7d0; font-size: 16px; line-height: 1.8; }
.content-site .article-back { margin-top: 25px; font-size: 14px; }

/* Journal landing page: shared brand image, then editorial rows, not boxed cards. */
.content-site .guide-index { padding-top: 42px; }
.content-site .guide-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.28fr) minmax(270px, .72fr);
  background: #122f44;
  color: #fff;
  margin-bottom: 36px;
}
.content-site .guide-hero-copy { min-width: 0; padding: 42px 43px 44px; }
.content-site .guide-hero .eyebrow { font-size: 12px; color: #e6c88f; letter-spacing: .1em; }
.content-site .guide-hero h1 { font-size: clamp(30px, 3vw, 40px); line-height: 1.6; margin: 18px 0 17px; letter-spacing: .015em; }
.content-site .guide-hero .index-lead { color: #fff; font-size: 21px; font-weight: 500; line-height: 1.85; margin: 0 0 20px; }
.content-site .guide-hero-copy > p:last-child { color: #d4dfe7; font-size: 15px; line-height: 1.95; }
.content-site .guide-hero-visual { position: relative; margin: 0; min-height: 330px; overflow: hidden; }
.content-site .guide-hero-visual img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: 57% center; }
.content-site .guide-topic-nav { margin: 0 0 55px; padding: 26px 0 29px; border: 0; border-bottom: 1px solid var(--content-border); background: transparent; }
.content-site .guide-topic-nav > p { margin-bottom: 17px; font-size: 15px; }
.content-site .guide-topic-nav > div { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
.content-site .guide-topic-nav a { min-height: 54px; padding: 12px 17px; background: var(--content-paper); border: 1px solid #e2ddd3; font-size: 14px; }
.content-site .guide-topic-nav a:hover { color: #735320; background: #f6f0e4; border-color: #bda273; }
.content-site .guide-topic-section { margin-top: 54px; scroll-margin-top: 110px; }
.content-site .guide-topic-section > h2 { margin-bottom: 0; padding-bottom: 17px; font-size: 26px; border-bottom: 2px solid #19394e; gap: 17px; }
.content-site .guide-topic-section > h2 span { font-size: 12px; letter-spacing: 0; }
.content-site .guide-topic-section .guide-grid { display: block; margin: 0; }
.content-site .guide-card {
  display: grid;
  grid-template-columns: 156px minmax(0, 1fr);
  gap: 8px 28px;
  position: relative;
  padding: 28px 0 27px;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--content-border);
  box-shadow: none;
}
.content-site .guide-card .guide-category { grid-column: 1; grid-row: 1; padding-top: 5px; font-size: 12px; }
.content-site .guide-card h3 { grid-column: 2; grid-row: 1; font-size: 22px; line-height: 1.7; margin: 0; }
.content-site .guide-card h3 a { text-decoration: none; }
.content-site .guide-card > p:not(.guide-category) { grid-column: 2; grid-row: 2; max-width: 58em; color: #52636d; font-size: 15px; line-height: 1.9; }
.content-site .guide-card .guide-meta { grid-column: 1; grid-row: 2; align-self: start; margin: 0; font-size: 12px; }
.content-site .guide-card-read { grid-column: 2; display: inline-flex; align-items: center; gap: 10px; justify-self: start; font-size: 13px; color: #294f69; margin-top: 7px; }
.content-site .guide-card-read::after { content: "→"; font: 17px/1 Arial, sans-serif; }
.content-site .guide-card:focus-within h3 a { text-decoration: underline; text-underline-offset: 5px; }
.content-site .editorial-link { margin-top: 22px; font-size: 14px; }

/* Policy and calculator keep their existing content and calculations. */
.content-site .policy-heading { padding: 35px 0 39px; border-bottom: 1px solid var(--content-border); margin-bottom: 32px; }
.content-site .policy-heading h1 { font-size: clamp(30px, 3.2vw, 43px); line-height: 1.6; margin: 15px 0 17px; }
.content-site .policy-heading p { max-width: 44em; }
.content-site .policy-principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0 0 48px; background: var(--content-paper); border-top: 2px solid #b7955d; }
.content-site .policy-principles > * { padding: 24px 27px; min-width: 0; }
.content-site .policy-principles > * + * { border-left: 1px solid #e2ddd3; }
.content-site .policy-principles h2,
.content-site .policy-principles h3 { font-size: 19px; line-height: 1.7; letter-spacing: 0; }
.content-site .policy-principles p { font-size: 14px; line-height: 1.9; margin-top: 10px; color: #52636d; }
.content-site .valuation-heading { max-width: none; padding: 37px 40px 36px; background: #122f44; color: #fff; border-top: 3px solid #b7955d; margin: 0 0 36px; }
.content-site .valuation-heading .eyebrow { color: #e6c88f; }
.content-site .valuation-heading h1 { color: #fff; font-size: clamp(32px, 3.3vw, 45px); }
.content-site .valuation-heading .valuation-lead,
.content-site .valuation-heading .valuation-intro-note { color: #dbe4eb; max-width: 52em; }
.content-site .valuation-heading .valuation-meta { color: #f0d29a; }
.content-site .valuation-heading .valuation-meta span { border-color: #b7955d; }

@media (hover: hover) {
  .content-site .guide-card:hover h3 a { color: #765924; }
  .content-site .guide-card:hover .guide-card-read { color: #765924; }
}
@media (max-height: 760px) { .content-site .reading-support { position: static; } }
@media (max-width: 1020px) {
  .content-site .article-page { max-width: 820px; }
  .content-site .reading-grid,
  .content-site .policy-layout { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .content-site .reading-support { display: none; }
  .content-site .article-cta { grid-template-columns: minmax(0, 1fr); gap: 25px; padding: 35px; }
  .content-site .article-cta-action { padding: 23px 0 0; border-left: 0; border-top: 1px solid #ffffff2e; }
  .content-site .article-cta-action .button { max-width: 380px; }
  .content-site .guide-hero { grid-template-columns: minmax(0, 1.3fr) minmax(225px, .7fr); }
  .content-site .guide-hero-copy { padding: 32px; }
  .content-site .guide-card { grid-template-columns: 124px minmax(0, 1fr); gap: 8px 23px; }
}
@media (max-width: 640px) {
  .content-site { scroll-padding-top: 88px; }
  .content-site .article-page,
  .content-site .guide-index { padding: 25px 20px 45px; }
  .content-site .breadcrumbs { font-size: 12px; margin-bottom: 15px; }
  .content-site .article-heading { padding: 18px 0 29px; margin-bottom: 30px; }
  .content-site .article-heading h1 { font-size: clamp(26px, 7.25vw, 31px); line-height: 1.6; margin: 13px 0 18px; letter-spacing: 0; }
  .content-site .article-description { font-size: 16px; line-height: 1.9; margin-bottom: 19px; }
  .content-site .guide-meta { font-size: 12px; }
  .content-site .article-toc { padding: 20px 19px; margin-bottom: 32px; }
  .content-site .article-toc li { font-size: 14px; padding: 6px 0; line-height: 1.85; }
  .content-site .article-body { font-size: 16px; line-height: 1.95; letter-spacing: 0; }
  .content-site .article-body p { margin: 21px 0; }
  .content-site .article-body h2 { font-size: 23px; line-height: 1.7; margin: 40px 0 20px; padding-bottom: 14px; scroll-margin-top: 87px; }
  .content-site .article-body h3 { font-size: 19px; margin: 29px 0 16px; }
  .content-site .article-body :is(ul, ol) { padding-left: 1.3em; }
  .content-site .article-table table,
  .content-site .article-table tbody { display: block; font-size: 15px; }
  .content-site .article-table tbody tr {
    display: block;
    padding: 0 16px 15px;
    border: 1px solid #d9e1e6;
    border-radius: 2px;
    margin: 15px 0;
    background: #fff;
  }
  .content-site .article-table tbody th { display: block; padding: 14px 0 12px; border-bottom: 1px solid #e3e8ec; font-size: 15px; line-height: 1.85; }
  .content-site .article-table tbody td { display: block; margin-top: 12px; padding: 0; text-align: left; border: 0; line-height: 1.85; }
  .content-site .article-table td::before { font-size: 12px; color: #60717d; line-height: 1.6; margin-bottom: 3px; }
  .content-site .article-table :is(th, td).is-numeric { text-align: left; white-space: normal; }
  .content-site .article-sources h2 { font-size: 21px; }
  .content-site .article-sources li { font-size: 14px; }
  .content-site .article-cta { margin-top: 43px; padding: 27px 22px 28px; gap: 22px; }
  .content-site .article-cta h2 { font-size: 23px; line-height: 1.7; margin: 13px 0 16px; }
  .content-site .article-cta h2 br { display: none; }
  .content-site .article-cta p { font-size: 15px; }
  .content-site .article-cta .contact-pending { font-size: 14px; }
  .content-site .article-cta-action { padding-top: 21px; }
  .content-site .article-cta-action .button { max-width: none; min-height: 54px; font-size: 16px; }
  .content-site .article-cta .article-fee-note { font-size: 12px; }
  .content-site .article-related { margin-top: 32px; }
  .content-site .article-related h2 { font-size: 19px; }
  .content-site .article-related a { font-size: 15px; }
  .content-site .guide-hero { display: flex; flex-direction: column; margin: 0 -20px 27px; }
  .content-site .guide-hero-copy { padding: 31px 20px 27px; }
  .content-site .guide-hero h1 { font-size: 28px; margin: 12px 0 16px; }
  .content-site .guide-hero .index-lead { font-size: 18px; line-height: 1.85; margin-bottom: 15px; }
  .content-site .guide-hero .index-lead br { display: none; }
  .content-site .guide-hero-copy > p:last-child { font-size: 15px; line-height: 1.9; }
  .content-site .guide-hero-visual { min-height: 170px; max-height: 190px; aspect-ratio: 2.25; }
  .content-site .guide-hero-visual img { object-position: 57% 45%; }
  .content-site .guide-topic-nav { padding: 0 0 27px; margin-bottom: 35px; }
  .content-site .guide-topic-nav > div { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .content-site .guide-topic-nav a { padding: 11px 12px; min-height: 58px; font-size: 14px; gap: 4px 8px; }
  .content-site .guide-topic-section { margin-top: 37px; scroll-margin-top: 87px; }
  .content-site .guide-topic-section > h2 { font-size: 23px; gap: 13px; padding-bottom: 14px; }
  .content-site .guide-card { display: block; padding: 23px 0 24px; }
  .content-site .guide-card .guide-category { padding: 0; font-size: 12px; }
  .content-site .guide-card h3 { font-size: 21px; line-height: 1.75; margin: 9px 0 12px; }
  .content-site .guide-card > p:not(.guide-category) { font-size: 15px; line-height: 1.9; }
  .content-site .guide-card .guide-meta { display: inline-block; margin: 13px 18px 0 0; }
  .content-site .guide-card-read { display: inline-flex; margin-top: 13px; font-size: 13px; }
  .content-site .policy-heading { padding: 20px 0 28px; }
  .content-site .policy-heading h1 { font-size: 29px; }
  .content-site .policy-principles { display: block; margin-bottom: 35px; }
  .content-site .policy-principles > * { padding: 22px; }
  .content-site .policy-principles > * + * { border-left: 0; border-top: 1px solid #e2ddd3; }
  .content-site .valuation-heading { margin: 0 -20px 28px; padding: 29px 20px 28px; }
  .content-site .valuation-heading h1 { font-size: 30px; line-height: 1.65; }
  .content-site .valuation-heading .valuation-lead { font-size: 16px; }
  .content-site .valuation-heading .valuation-meta { gap: 10px 17px; font-size: 13px; }
  /* Preserve the requested non-modal consultation panel and the current dock behavior. */
  .content-site .consultation-dock { width: 252px; }
  .content-site .footer-inner { padding-bottom: calc(132px + env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .content-site *, .content-site *::before, .content-site *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
@media print {
  .content-site .article-page { max-width: none; padding: 0; }
  .content-site .reading-grid, .content-site .policy-layout { display: block; }
  .content-site .reading-support, .content-site .article-cta, .content-site .article-related { display: none; }
  .content-site .article-heading { padding-top: 0; }
  .content-site .article-table tr { break-inside: avoid; }
}

/* Final markup details supplied by the implementation owner. */
.content-site .guide-h1-prefix { display:block; font-size:.48em; line-height:1.8; font-weight:500; margin-bottom:5px; }
.content-site .guide-topic-description { margin:-8px 0 23px; color:#52636d; font-size:15px; line-height:1.9; }
.content-site .article-answer { margin:0 0 26px; padding:24px 28px; border-left:3px solid #b08b50; background:#f3f0e9; color:#243b4b; }
.content-site .article-answer p { font-size:16px; line-height:2; margin:0; overflow-wrap:anywhere; }
.content-site .article-answer .answer-label { margin-bottom:8px; font-size:12px; font-weight:600; color:#80632f; letter-spacing:.08em; }
.content-site .article-answer a { text-decoration:underline; text-underline-offset:3px; }
.content-site .article-related .related-reason { margin:4px 0 8px; color:#52636d; font-size:14px; line-height:1.85; }
.content-site .source-detail { margin:7px 0 14px; font-size:14px; }
.content-site .source-detail summary { cursor:pointer; color:#546977; min-height:32px; }
.content-site .source-detail p { margin:5px 0 0; font-size:14px; line-height:1.9; }
.content-site .breadcrumbs [aria-current] { overflow-wrap:anywhere; }
@media(max-width:640px) {
 .content-site .article-answer { padding:20px 18px; margin-bottom:24px; }
 .content-site .guide-topic-description { margin-top:0; font-size:14px; }
 .content-site .breadcrumbs { flex-wrap:wrap; line-height:1.8; }
}
.content-site .reading-support .support-offer {
  padding-top: 17px;
  margin: 18px 0 13px;
  border-top: 1px solid #ded8ce;
  color: #18394f;
  font-size: 16px;
  font-weight: 600;
}
.content-site .support-offer span { display: block; margin-top: 3px; font-size: 12px; font-weight: 400; color: #52636d; }
.content-site .support-profile { display: inline-block; padding-top: 13px; font-size: 12px; line-height: 1.85; color: #52636d; text-decoration: underline; text-underline-offset: 4px; }
.content-site .article-cta .cta-reassurance { margin-top: 18px; font-size: 14px; color: #e2c58f; }
.content-site .article-cta .cta-offer { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 14px; margin: 0 0 19px; color: #fff; }
.content-site .cta-offer > span { font-size: 14px; line-height: 1.8; }
.content-site .cta-offer > strong { font-size: 34px; line-height: 1.3; color: #e6c88f; font-weight: 600; }
.content-site .cta-offer > span:last-child { flex-basis: 100%; color: #d4dfe7; font-size: 13px; }
.content-site .article-cta .cta-how { margin: 15px 0 0; font-size: 13px; line-height: 1.9; color: #d4dfe7; }
.content-site .guide-hero-label { font-size: 14px; color: #e2c58f; letter-spacing: .04em; margin-top: 19px; }
.content-site .guide-hero-copy > p:not(.eyebrow):not(.guide-hero-label):not(.index-lead) { color: #d4dfe7; font-size: 15px; line-height: 1.95; }
.content-site .guide-hero-meta { display: flex; flex-wrap: wrap; gap: 9px 17px; border-top: 1px solid #ffffff35; padding-top: 20px; margin-top: 26px; font-size: 11px; color: #d4dfe7; line-height: 1.8; letter-spacing: .035em; }
.content-site .guide-hero-meta a { text-decoration: underline; text-underline-offset: 4px; }
.content-site .guide-hero-visual figcaption { position: absolute; inset: auto 0 0; padding: 35px 27px 27px; background: linear-gradient(transparent, #0d2339ec); font: 11px/1.8 Arial,sans-serif; letter-spacing: .12em; color: #e6c88f; }
.content-site .guide-hero-visual figcaption span { display: block; margin-top: 8px; font: 17px/1.8 var(--body-font); letter-spacing: .04em; color: #fff; }
.content-site .guide-card-read::after { content: none; }
.content-site .policy-principles > div > span { display: block; color: #85622f; font: 11px/1.8 Arial,sans-serif; letter-spacing: .07em; margin-bottom: 10px; }
.content-site .article-heading h1 .article-title-main { display: block; word-break: normal; line-break: strict; text-wrap: pretty; }
.content-site .article-heading h1 .article-title-detail { display: block; font-size: .7em; font-weight: 500; line-height: 1.65; letter-spacing: 0; margin-top: 8px; color: #435765; word-break: normal; line-break: strict; text-wrap: pretty; }
@media (max-width: 640px) {
  .content-site .guide-hero-label { font-size: 13px; margin-top: 17px; }
  .content-site .guide-hero-meta { margin-top: 20px; padding-top: 16px; gap: 8px 14px; }
  .content-site .guide-hero-visual figcaption { padding: 26px 20px 19px; }
  .content-site .guide-hero-visual figcaption span { font-size: 15px; margin-top: 4px; }
  .content-site .article-cta .cta-offer { margin-bottom: 17px; }
  .content-site .cta-offer > strong { font-size: 31px; }
  .content-site .article-cta .cta-how { font-size: 13px; }
  .content-site .article-cta .cta-how br { display: none; }
}
