.rf-source {max-width:1180px;margin:auto;padding:clamp(14px,3vw,36px);}
.rf-source img {max-width:100%;height:auto;}
.rf-source h1,.rf-source h2,.rf-source h3 {line-height:1.2;overflow-wrap:anywhere;}
.rf-source section {margin-block:clamp(18px,3.5vw,45px);}
.rf-source .cont,.rf-source .s68-inner,.rf-source .s68-main,.rf-source .s68-hero-copy {width:auto;max-width:100%;}
.rf-source a {overflow-wrap:anywhere;}
.rf-source .s68-grid,.rf-source .s68-services-grid,.rf-source .photo-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1.1rem;}
.rf-source .s68-card,.rf-source .rf-review {padding:1rem;border:1px solid #d7ded8;border-radius:.8rem;background:#fff;}
.rf-source .photo-grid figure {margin:0;min-width:0;}
.rf-source .photo-grid figure[hidden],.rf-source [hidden] {display:none!important;}
.rf-source .photo-grid figcaption {margin-top:.35rem;}
.rf-source .photo-button {display:block;width:100%;background:#edf1ee;cursor:pointer;padding:0;border:0;border-radius:.5rem;overflow:hidden;}
.rf-source .photo-button img {display:block;width:100%;height:clamp(160px,32vw,265px);object-fit:cover;}
.rf-source .rf-review blockquote {margin:1rem 0;white-space:pre-line;overflow-wrap:anywhere;}
.rf-source .rf-lead {max-width:720px;padding:1.25rem;border:1px solid #c5d1c5;border-radius:.75rem;background:#f1f6ef;}
.rf-source .rf-lead label:not([hidden]) {display:block;margin:.65rem 0;}
.rf-source .rf-lead input:not([type=checkbox]),.rf-source .rf-lead textarea {display:block;width:100%;max-width:100%;font:inherit;padding:.65rem;border:1px solid #566959;border-radius:.4rem;background:white;}
.rf-source .rf-lead [type=submit],.rf-source select {min-height:44px;padding:.55rem .8rem;font:inherit;}
.rf-source .rf-lead [type=submit] {background:#17251e;color:white;border:0;border-radius:.45rem;cursor:pointer;}
.rf-source .rf-lead [type=submit]:disabled {opacity:.62;cursor:default;}
.rf-source .rf-lead [aria-invalid=true] {outline:2px solid #9a2c26;}
.rf-source :is(button,a,select,input,textarea):focus-visible {outline:3px solid #734117;outline-offset:3px;}
.rf-full-nav {max-width:1100px;margin:1rem auto;padding-inline:1rem;}
.rf-full-nav summary {min-height:44px;cursor:pointer;}
.rf-full-nav ul {display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;}
