/* Consultation is the primary action. Company contact data remains a design placeholder. */
.visual-site{--call:#a83e2d;--call-hover:#873021;--contact-ink:#233c32;--contact-paper:#f0ede3}
.consult-icon{width:24px;height:24px;flex:none;vertical-align:middle}
.call-action{display:flex;align-items:center;justify-content:center;gap:16px;background:var(--call);color:#fffaf2;padding:19px 22px;border:1px solid transparent;border-radius:3px;text-decoration:none;line-height:1.3;transition:background .18s,transform .18s;min-height:70px}
.call-action:hover{background:var(--call-hover)}
.call-action:focus-visible{outline:3px solid var(--call);outline-offset:4px}
.call-action>.consult-icon{width:30px;height:30px}
.call-action>span:not(.call-arrow){display:flex;flex-direction:column;gap:5px}
.call-action strong{font-family:var(--sans);font-size:19px;font-weight:600;letter-spacing:.04em}
.call-action small{font:15px/1.2 var(--sans);letter-spacing:.08em;white-space:nowrap}
.call-action em{font:normal 8px var(--sans);border:1px solid #fff6;padding:1px 3px;vertical-align:middle;margin-left:7px;letter-spacing:0}
.call-arrow{margin-left:auto;font-size:24px;font-weight:300}
.header-call{padding:12px 17px;min-height:62px;gap:11px;flex:none}
.header-call strong{font-size:14px}.header-call small{font-size:13px}.header-call>.consult-icon{width:23px;height:23px}.header-call .call-arrow{display:none}
.visual-site .header-inner{gap:22px}.visual-site .header .nav{margin-left:auto;gap:24px}.visual-site .brand{flex-shrink:1}.visual-site .brand-name{max-width:210px}
.visual-site .visual-hero{padding-top:42px;column-gap:35px;grid-template-columns:minmax(310px,.95fr) minmax(0,1.6fr)}
.visual-site .visual-copy{padding-bottom:23px}.visual-site .visual-copy h1{font-size:clamp(29px,2.7vw,39px);margin:17px 0 15px}.visual-site .visual-lead{font-size:13px}
.visual-site .visual-actions.consultation-hero{display:flex;flex-direction:column;align-items:stretch;gap:10px;max-width:365px;width:100%;padding:0 0 16px}
.consult-invite{font-size:14px;line-height:1.8;color:var(--ink);font-weight:500;letter-spacing:.01em}
.message-link{display:flex;align-items:center;justify-content:center;gap:9px;font-size:12px;min-height:44px;color:var(--ink);border-bottom:1px solid var(--line)}
.message-link .consult-icon{width:19px;height:19px}.message-link:hover{color:var(--call)}
.consult-preview-label{font-size:9px!important;color:var(--muted);text-align:center;line-height:1.6}
.visual-site .visual-region{padding-top:12px}
.visual-site .visual-needs{padding-top:52px;padding-bottom:54px}
.needs-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}
.needs-heading .eyebrow{font-size:9px;margin-bottom:9px}.visual-site .needs-heading h2{font-size:27px;margin:0;line-height:1.6}.needs-heading>p{font-size:11px;color:var(--muted);line-height:1.8}
.visual-site .concern-links{gap:16px}.visual-site .concern-card{display:grid;grid-template-columns:51px 1fr 18px;gap:15px;min-height:112px;border:1px solid var(--line);border-radius:4px;padding:20px;background:#fffdf7;line-height:1.8;transition:background .18s,border-color .18s,transform .18s}
.concern-icon{width:51px;height:57px;display:grid;place-items:center;background:var(--surface);color:var(--accent);border-radius:25px 25px 6px 6px}.concern-icon .consult-icon{width:31px;height:31px}
.concern-text{font-size:14px}.concern-arrow{font-size:20px;color:var(--accent)}
.visual-site .concern-card:hover,.visual-site .concern-card[aria-current]{background:var(--surface);border-color:var(--accent);transform:translateY(-2px)}
.consultation-section{padding:53px 0 47px;background:var(--contact-paper);scroll-margin-top:0}
.consultation-heading{position:relative;margin-bottom:30px}.consultation-heading .eyebrow{font-size:10px}.consultation-heading h2{font-family:var(--serif);font-size:35px;line-height:1.6;margin:12px 0 8px}.consultation-heading h2 br{display:none}.consultation-heading>p:last-child{font-size:13px;color:var(--muted)}
.consultation-channels{display:grid;grid-template-columns:1.12fr 1fr;min-height:285px;border-radius:5px;overflow:hidden}
.phone-channel{background:var(--contact-ink);color:#fffaf0;padding:31px 38px 25px}.message-channel{background:#fffdf7;padding:31px 38px 25px}
.channel-overline{display:flex;align-items:center;gap:11px;font-size:11px;letter-spacing:.05em;opacity:.8}.channel-overline .consult-icon{width:20px;height:20px}
.consultation-channels h3{font:500 30px/1.6 var(--serif);margin:14px 0 5px}.channel-copy{font-size:13px;line-height:1.9}.phone-channel .channel-copy{color:#e0e5dc}
.channel-call{background:transparent;justify-content:flex-start;padding:14px 0 9px;min-height:65px;border-radius:0;border-bottom:1px solid #fff5;margin-top:11px;gap:13px}
.channel-call:hover{background:transparent;color:#e8d7b4;border-bottom-color:#e8d7b4}.channel-call:focus-visible{outline-color:#f2dbc6}
.channel-call strong{display:none}.channel-call small{font-size:38px;letter-spacing:.025em;font-family:var(--sans)}.channel-call em{font-size:9px}.channel-call>.consult-icon{width:26px;height:26px}.channel-call .call-arrow{font-size:30px}
.phone-hours{font-size:10px;color:#ced5cb;margin-top:10px}.message-action{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--contact-ink);border-radius:3px;min-height:57px;padding:14px 20px;font-size:14px;margin-top:24px;background:transparent;color:var(--contact-ink)}
.message-action:hover{background:var(--contact-paper)}.channel-small{font-size:10px;color:var(--muted);margin-top:12px}
.consultation-preparation{margin-top:26px}.consultation-preparation>p{font-size:13px;font-weight:500;margin-bottom:12px}.consultation-preparation ol{list-style:none;display:flex;flex-wrap:wrap;gap:9px 25px;padding:0;margin:0}.consultation-preparation li{display:flex;align-items:center;gap:9px;font-size:12px}.consultation-preparation li>span{font:17px Georgia,serif;color:var(--call)}
.photo-tip{margin-top:15px}.photo-tip summary{display:flex;justify-content:flex-start;gap:9px;font-size:11px;min-height:44px;padding:8px 0;width:fit-content;color:var(--muted)}.photo-tip summary:before{display:none}.photo-tip summary:after{content:'＋';font-size:15px}.photo-tip[open] summary:after{content:'−'}.photo-tip .consult-icon{width:18px;height:18px}.photo-tip p{font-size:12px;color:var(--muted);line-height:1.9;padding:0 0 12px}
.selected-consult-topic{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.7;background:#fffc;padding:13px 17px;margin-bottom:18px;border-left:3px solid var(--call)}.selected-consult-topic strong{font-weight:500}.selected-consult-topic button{margin-left:auto;min-width:44px;min-height:44px;border:0;background:none;color:var(--ink);font-size:24px;cursor:pointer}
.message-disclosure{border-top:1px solid #233c3229;border-bottom:1px solid #233c3229;margin-top:20px;scroll-margin-top:0}.message-disclosure>summary{padding:20px 0;font-size:16px;min-height:65px}.message-disclosure>summary:before,.message-disclosure>summary:after{display:none}.message-disclosure>summary>span:first-child{display:flex;align-items:center;gap:12px}.message-disclosure[open]>summary>span:last-child{font-size:0}.message-disclosure[open]>summary>span:last-child:after{content:'−';font-size:20px}
.message-form-body{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;padding:8px 0 28px}.message-form-intro{padding-top:24px}.message-form-intro h3{font:500 24px/1.7 var(--serif)}.message-form-intro>p{font-size:12px;color:var(--muted);margin-top:12px}.message-form-intro .form-demo-note{font-size:10px;margin-top:25px}.visual-site .contact-form{background:#fffdf7;border-radius:4px}.consultation-prototype-note{font-size:9px;color:var(--muted);margin-top:17px;line-height:1.8}
.detail-heading{padding-top:50px;display:flex;align-items:end;flex-wrap:wrap;gap:10px 25px;margin-bottom:14px}.detail-heading>.eyebrow{flex-basis:100%;font-size:9px}.detail-heading h2{font:500 25px/1.6 var(--serif)}.detail-heading .visual-model-link{margin-left:auto}
.visual-site .visual-details{margin-bottom:30px}.visual-site .visual-details>details>summary{font-size:18px;min-height:65px}
.consultation-dock{display:none}
.phone-preview-dialog{border:1px solid var(--line);border-radius:6px;padding:42px;max-width:510px;width:calc(100% - 32px);background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #0003;overscroll-behavior:contain}
.phone-preview-dialog::backdrop{background:#12251b80;backdrop-filter:blur(3px)}.phone-preview-dialog h2{font:500 24px/1.6 var(--serif);margin:16px 0}.phone-preview-dialog p{font-size:12px;line-height:1.9}.phone-preview-dialog .eyebrow{font-size:9px;margin-top:16px}.phone-preview-dialog .dialog-number{font-size:32px;letter-spacing:.03em}.dialog-icon{color:var(--call)}.dialog-icon .consult-icon{width:36px;height:36px}.dialog-close{position:absolute;right:12px;top:12px;background:none;border:0;min-width:44px;min-height:44px;font-size:28px;cursor:pointer}.dialog-topic{padding:12px;background:var(--surface);margin-top:18px}.phone-preview-dialog .message-action{font-size:12px}
@media(min-width:861px) and (max-width:1150px){.visual-site .header .nav{gap:15px}.visual-site .brand-name{max-width:175px}.header-call{padding-inline:12px}.visual-site .header-inner{gap:16px}.visual-site .header .nav a{font-size:10px}.channel-call small{font-size:29px}}
@media(max-width:1000px){.visual-site .header .nav{display:none}.visual-site .menu-toggle{display:block;margin-left:auto}.visual-site .nav[data-open=true]{display:flex;position:absolute;top:100%;left:0;width:100%;padding:22px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.visual-site .nav a{padding:12px}.visual-site .concern-card{padding:16px;gap:12px;grid-template-columns:42px 1fr 14px}.concern-icon{width:42px;height:49px}.concern-text{font-size:12px}.phone-channel,.message-channel{padding:27px}.channel-call small{font-size:29px}}
@media(max-width:860px){.visual-site .visual-hero{grid-template-columns:1fr;grid-template-areas:'copy' 'art' 'actions';padding-top:30px}.visual-site .visual-copy h1{font-size:34px}.visual-site .visual-actions.consultation-hero{max-width:none;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8px 22px;padding:23px 0 0}.consult-invite{grid-column:1/-1}.consult-preview-label{grid-column:1/-1}.hero-call{min-height:73px}.message-link{min-height:73px}.visual-site .visual-region{padding-top:15px}.needs-heading{align-items:start;flex-direction:column;gap:9px}.consultation-channels{grid-template-columns:1fr 1fr}.consultation-channels h3{font-size:26px}.channel-call small{font-size:24px}.channel-call>.consult-icon{display:none}.message-form-body{grid-template-columns:1fr;gap:18px}.message-form-intro{padding:0}.message-form-intro .form-demo-note{margin-top:9px}}
@media(max-width:600px){.visual-site .header{height:72px}.visual-site .header-inner{gap:10px}.visual-site .brand{gap:10px}.visual-site .brand img{width:102px}.visual-site .brand-name{font-size:9px;padding-left:10px;max-width:150px}.visual-site .header-call{display:none}.visual-site .visual-hero{padding-top:25px;padding-bottom:19px}.visual-site .visual-copy{padding-bottom:19px}.visual-site .visual-copy h1,.visual-site.theme-steel .visual-copy h1,.visual-site.theme-forest .visual-copy h1{font-size:29px;margin:12px 0}.visual-site .visual-actions.consultation-hero{display:flex;gap:8px;align-items:stretch;padding-top:19px}.consult-invite{font-size:13px}.hero-call{padding:16px 22px;min-height:78px}.hero-call strong{font-size:19px}.hero-call small{font-size:15px}.message-link{min-height:44px;font-size:12px}.visual-site .visual-needs{padding-top:30px;padding-bottom:32px}.needs-heading{margin-bottom:16px;gap:8px}.visual-site .needs-heading h2{font-size:23px}.needs-heading>p{font-size:10px}.visual-site .concern-links{gap:10px}.visual-site .concern-card{grid-template-columns:46px 1fr 20px;padding:13px 17px;min-height:86px;gap:15px}.concern-icon{width:46px;height:52px}.concern-text{font-size:13px}.consultation-section{padding:32px 0 29px;scroll-margin-top:0}.consultation-heading{margin-bottom:21px}.consultation-heading h2{font-size:29px;line-height:1.6}.consultation-heading h2 br{display:block}.consultation-heading>p:last-child{font-size:12px}.consultation-channels{grid-template-columns:1fr}.phone-channel,.message-channel{padding:25px 24px}.consultation-channels h3{font-size:28px;margin-top:12px}.channel-overline{font-size:10px}.channel-copy{font-size:12px}.channel-call small{font-size:32px}.channel-call>.consult-icon{display:block;width:22px;height:22px}.channel-call{gap:12px}.phone-hours{font-size:9px}.message-channel{padding-top:22px;padding-bottom:24px}.message-action{min-height:54px;font-size:13px;margin-top:19px}.consultation-preparation{margin-top:23px}.consultation-preparation>p{font-size:12px}.consultation-preparation ol{display:grid;gap:10px}.consultation-preparation li{font-size:12px}.photo-tip summary{font-size:11px}.selected-consult-topic{font-size:11px;padding:10px 12px;gap:7px;flex-wrap:wrap}.selected-consult-topic strong{max-width:70%}.message-disclosure{scroll-margin-top:0}.message-disclosure>summary{font-size:14px}.message-form-body{padding-bottom:20px}.message-form-intro h3{font-size:22px}.detail-heading{padding-top:35px;gap:8px}.detail-heading h2{font-size:23px}.detail-heading .visual-model-link{margin-left:0;flex-basis:100%;font-size:11px}.visual-site .footer{padding-bottom:122px}.consultation-dock{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1.7fr 1fr;gap:8px;background:#faf8f2f5;padding:10px 16px calc(10px + env(safe-area-inset-bottom));z-index:30;border-top:1px solid var(--line);box-shadow:0 -5px 22px #21382d0c;backdrop-filter:blur(12px)}.dock-call{min-height:60px;padding:10px 13px;gap:9px}.dock-call strong{font-size:13px}.dock-call small{font-size:11px}.dock-call>.consult-icon{width:23px;height:23px}.dock-call .call-arrow{display:none}.dock-message{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--contact-ink);border-radius:3px;color:var(--contact-ink);font-size:12px;min-height:60px}.dock-message .consult-icon{width:21px;height:21px}.phone-preview-dialog{padding:32px 24px}.phone-preview-dialog h2{font-size:23px}.phone-preview-dialog .dialog-number{font-size:29px}.phone-preview-dialog p{font-size:11px}.phone-preview-dialog .message-action{padding-inline:13px}.visual-site #memo-result{scroll-margin-bottom:110px}}
@media(max-width:360px){.visual-site .brand-name{max-width:130px}.visual-site .visual-copy h1,.visual-site.theme-steel .visual-copy h1,.visual-site.theme-forest .visual-copy h1{font-size:26px}.phone-channel,.message-channel{padding-inline:20px}.channel-call small{font-size:27px}.channel-call{gap:9px}.channel-call .call-arrow{font-size:24px}.consultation-dock{padding-inline:10px;gap:6px}.dock-call{padding-inline:10px;gap:7px}.dock-call strong{font-size:12px}.dock-message{font-size:11px;gap:5px}}
@media(prefers-reduced-motion:reduce){.call-action,.concern-card{transition:none!important}.visual-site .concern-card:hover{transform:none}}
@media print{.consultation-dock,.consultation-section,.consultation-hero,.phone-preview-dialog{display:none!important}}
