/* Product review refinements on top of the existing candidate design. */
.header .brand{width:205px;align-items:center;gap:5px}
.header .brand-logo{width:100%;height:auto}
.brand-caption{display:block;text-align:center;width:100%;letter-spacing:0}
.header .brand-caption{font-size:12px;line-height:1.5}
.header-inner{height:106px}
h1,h2,h3{text-wrap:balance}
p,li,dd{line-break:strict;text-wrap:pretty}
.hero-description{max-width:510px}
.services-grid{align-items:start}
.service-card{height:auto;min-height:0}
.service-card .card-top{margin-bottom:18px}
.service-card>p{margin-bottom:0}
.service-card ul{margin:18px 0 20px;min-height:0;flex:none}
.service-card li+li{margin-top:5px}
.service-link{margin-top:0;white-space:nowrap;gap:12px}
.service-link>span{flex-shrink:0}
.section-intro{max-width:490px}
.keep-phrase{display:inline-block;white-space:nowrap}
.qr-title-line{display:inline-block;white-space:nowrap}
.sample-copy .sample-disclaimer{font-size:14px;line-height:1.85;color:var(--muted);margin:10px 0 0}
.section-top h2{max-width:620px}
.finder-result>div{min-width:0}
.finder-result .text-link{white-space:nowrap}
.process-list p br{display:none}
.process-list li{padding-top:24px}
.process-list h3{margin-bottom:12px}
.about-grid{grid-template-columns:1fr 1.15fr;gap:70px}
.about-grid h2{font-size:32px;max-width:530px}
.about-signature{align-items:center}
.about-signature>span{min-width:0}
.signature-symbol{object-fit:contain;width:48px;height:auto}
.faq-grid{grid-template-columns:.8fr 1.2fr;gap:65px}
.faq-list summary>span{flex-shrink:0}
.contact-overview{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}
.contact-overview .phone-card,.address-card{padding:28px;border:1px solid var(--line);border-radius:7px;background:#fff}
.address-card{display:flex;flex-direction:column;justify-content:center}
.address-card>p{font-size:20px;line-height:1.85;max-width:420px;color:var(--ink)}
.address-card>small{font-size:14px;line-height:1.85;color:var(--muted);margin-top:12px;display:block}
.phone-actions{gap:24px;margin-top:14px}
.contact-methods.dual-qr{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;align-items:start}
.qr-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:7px;min-width:0;text-align:center}
.qr-card .contact-label{font-size:15px;margin-bottom:12px}
.qr-card h3{font-size:21px;line-height:1.75;font-weight:500;max-width:440px;margin:0 auto}
.qr-purpose{font-size:14px;color:var(--muted);margin-top:8px}
.qr-open{width:244px;max-width:100%;margin:20px auto 12px;padding:0;border:1px solid #dce3ed;border-radius:0;background:#fff}
.qr-open img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:0}
.qr-actions{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:center}
.qr-actions>.text-link{font-size:15px;min-height:44px;white-space:nowrap;gap:6px}
.qr-card>.contact-help{font-size:14px;line-height:1.9;max-width:420px;margin:12px auto 0}
.qr-card .contact-help strong{font-weight:500;color:var(--green);white-space:nowrap}
.summary-disclosure{margin-top:30px;border:1px solid #ccd8e8;border-radius:7px;background:#fff;padding:0 28px 0}
.summary-disclosure>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:84px;padding:18px 0;cursor:pointer;font-size:17px;line-height:1.8;color:var(--ink)}
.summary-disclosure>summary::-webkit-details-marker{display:none}
.summary-disclosure summary strong{font-weight:500;color:var(--green);margin-right:10px}
.disclosure-symbol{font-size:26px;font-weight:300;color:var(--green);flex-shrink:0}
.summary-disclosure[open] .disclosure-symbol{transform:rotate(45deg)}
.summary-intro{font-size:15px;line-height:1.9;color:var(--muted);margin:0 0 22px;border-top:1px solid var(--line);padding-top:20px}
.summary-disclosure .consult-panel{position:static;max-width:780px;padding:0 0 28px;border:none;box-shadow:none;margin:0 auto}
.summary-disclosure .form-two{grid-template-columns:1fr 1fr;gap:20px}
.summary-disclosure .field{margin-bottom:20px}
.summary-disclosure .form-heading{margin:0 0 20px}
.summary-disclosure .form-privacy{margin-top:12px}
.qr-full{width:min(450px,100%);height:auto;aspect-ratio:1;object-fit:contain;border-radius:0}
.dialog-close{z-index:3}
.dialog-actions .button,.dialog-actions .text-link{white-space:normal;min-width:0;line-height:1.7}
.comparison-table tbody th{width:19%}
.comparison-table td{width:40.5%}
.footer{padding:45px 0 24px}
.footer-top{display:grid;grid-template-columns:230px minmax(300px,1fr) 300px;gap:44px;align-items:start;padding-bottom:28px}
.footer .brand{width:200px;align-items:center;gap:10px}
.footer .brand-logo{width:180px;height:auto}
.footer .brand-caption{font-size:12px;white-space:normal;line-height:1.8;color:var(--muted)}
.footer-contact{display:grid;gap:8px;font-size:16px;min-width:0}
.footer-label{font-size:14px;color:var(--muted)}
.footer-contact>a{color:var(--green);font-size:21px;font-weight:500;display:inline-flex;align-items:center;min-height:36px;width:max-content}
.footer-contact address{font-size:15px;font-style:normal;line-height:1.9;max-width:410px;color:var(--muted)}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 20px;align-items:start;font-size:15px}
.footer-links a{display:flex;align-items:center;min-height:38px;white-space:nowrap}
.footer-bottom{gap:8px 25px;align-items:center;margin-top:20px}
.footer-bottom>span:first-child{white-space:normal}
/* Keep the sticky header's consultation action; remove the overlapping bottom bar. */
.mobile-consult{display:none!important}
@media(max-width:1150px){
 .header .brand{width:174px}.header .brand-caption{font-size:10px}.header-inner{height:100px}
 .footer-top{grid-template-columns:190px 1fr 220px;gap:30px}.footer .brand{width:180px}.footer .brand-logo{width:174px}.footer .brand-caption{font-size:11px}
 .about-grid{gap:40px}.faq-grid{gap:45px}.qr-card{padding:26px}.contact-overview .phone-card,.address-card{padding:26px}
}
@media(max-width:900px){
 .header .brand{width:155px}.header .brand-caption{font-size:9px}.header-inner{height:94px}.header-actions{gap:7px}
 .hero-description{max-width:440px}.hero-art{height:360px}.hero-buttons .text-link{white-space:nowrap}
 .finder-heading p{margin-left:0;width:100%;margin-top:2px}.finder-result{align-items:flex-start}.finder-result .text-link{align-self:center}
 .about-grid{grid-template-columns:1fr;gap:25px}.faq-grid{grid-template-columns:1fr;gap:28px}
 .section-top{align-items:flex-start}.section-intro{max-width:350px}
 .contact-overview{gap:18px}.contact-methods.dual-qr{gap:18px}.qr-card{padding:24px 20px}.qr-card h3{font-size:19px}.qr-open{width:244px}.address-card>p{font-size:18px}
 .footer-top{grid-template-columns:190px 1fr;gap:26px 35px}.footer-links{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));max-width:680px;width:100%}
 .footer-contact address{max-width:none}.footer{padding-bottom:24px}
}
@media(max-width:700px){
 .qr-card .qr-title-line{display:block}
 html{scroll-padding-top:100px}.header .brand{width:156px}.header .brand-caption{font-size:10px;line-height:1.5}.header-inner{height:88px}
 .hero-art{height:330px}.hero-notes{gap:10px 15px}.hero-description{max-width:none}.hero-description .desktop-break{display:none}
 .hero-buttons{gap:12px 20px}.hero-buttons .button{white-space:nowrap}.hero-bottom{font-size:12px;gap:16px}.hero-bottom>span{max-width:220px}
 .finder-heading p{width:auto}.finder-result .text-link{display:inline-flex}.finder-result>div>span{display:block;max-width:100%;font-size:16px}
 .service-card{padding:25px 24px 0}.service-card>p{font-size:16px;line-height:1.9}.service-card li{font-size:15px;line-height:1.95}.service-card li+li{margin-top:5px}.service-card .card-top{margin-bottom:15px}.service-link{min-height:60px;font-size:16px}
 .service-footnote .text-link{white-space:normal}.service-footnote p{font-size:14px}
 .section-top h2{font-size:30px;line-height:1.65}.section-intro{font-size:16px;max-width:none}.section-intro br{display:none}
 .process-list{gap:30px 23px}.process-list h3{font-size:18px;line-height:1.65;word-break:keep-all}.process-list p{font-size:16px;line-height:1.9}.process-cta strong{font-size:16px;gap:15px}
 .about-grid h2{font-size:28px;line-height:1.7}.about-copy>p{font-size:16px}.about-signature{gap:12px;font-size:14px}.about-signature small{font-size:13px}
 .faq-list summary{font-size:16px;line-height:1.9;padding:18px 0}.faq-list details>p{font-size:16px;line-height:1.9}
 .contact-overview{grid-template-columns:1fr;gap:18px;margin-top:24px}.contact-overview .phone-card,.address-card{padding:24px}.phone-number{font-size:29px}.phone-actions .button,.phone-actions .text-link{white-space:nowrap}
 .address-card>p{font-size:18px;line-height:1.9}.address-card>small{font-size:14px;line-height:1.9}
 .contact-methods.dual-qr{grid-template-columns:1fr;gap:18px;margin-top:18px}.qr-card{padding:25px 24px}.qr-card .contact-label{font-size:15px}.qr-card h3{font-size:20px;line-height:1.8}.qr-purpose{font-size:14px;line-height:1.8}.qr-open{width:244px;max-width:100%;margin:18px auto 12px}.qr-card>.contact-help{font-size:14px;line-height:1.9}.qr-actions{gap:10px 25px}.qr-actions>.text-link{font-size:15px}
 .summary-disclosure{margin-top:24px;padding:0 22px}.summary-disclosure>summary{font-size:16px;gap:14px;min-height:90px;padding:18px 0}.summary-disclosure summary strong{display:block;margin:0 0 3px}.summary-intro{font-size:15px}.summary-disclosure .form-two{grid-template-columns:1fr;gap:0}.summary-disclosure .consult-panel{padding-bottom:25px}.form-heading h3{font-size:23px}.result-buttons{gap:15px}.result-buttons>.button{white-space:nowrap}
 .detail-dialog{padding:32px 22px}.detail-dialog h2{font-size:27px;line-height:1.7}.detail-dialog .section-kicker{padding-right:24px;font-size:12px;word-break:normal;overflow-wrap:anywhere}.dialog-close{top:0}.dialog-actions .button{font-size:16px}.dialog-actions .text-link{font-size:16px}.qr-full{width:min(450px,100%);height:auto}
 .footer{padding:35px 0 24px}.footer-top{grid-template-columns:1fr;gap:27px;align-items:start}.footer .brand{width:200px;align-items:center}.footer .brand-logo{width:180px}.footer .brand-caption{font-size:12px;line-height:1.8}.footer-contact{gap:8px}.footer-contact>a{font-size:22px;min-height:40px}.footer-contact address{font-size:15px;line-height:1.9}.footer-links{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;max-width:none}.footer-links a{min-height:44px;font-size:15px}.footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-top:20px;font-size:13px;line-height:1.8}.footer-bottom>span:first-child{width:auto}.icp-link,.footer-bottom button{min-height:40px;font-size:14px}.footer-bottom button{padding:0}.toast{bottom:20px}
}
@media(max-width:370px){
 .header .brand{width:144px}.header .brand-caption{font-size:9px}.header-inner{height:86px}.hero-buttons{gap:12px}.hero-buttons .button{font-size:15px;padding:12px 14px;gap:13px}.hero-buttons .text-link{font-size:14px;gap:8px}.service-card{padding:24px 23px 0}.service-card li{font-size:15px}.qr-card{padding:24px 20px}.qr-open{width:244px}.contact-overview .phone-card,.address-card{padding:23px}.summary-disclosure{padding:0 20px}.phone-actions{gap:20px}.process-list{gap:28px 20px}.process-list h3{font-size:17px}.detail-dialog{padding:32px 20px}
}
