/* The approved GG opening is unchanged. This sheet refines the page below it. */
.r7-home .integration-strip{padding-top:65px;padding-bottom:78px}
.r7-home .integration-copy h2{font-size:23px;line-height:1.25;letter-spacing:-.035em}
.r7-home .integration-copy p{font-size:13px}
.r7-home .integration-logos{gap:32px;justify-content:space-between}

.r7-home .r7-process{background:#101817;color:#f8f7f3;padding:100px 0 105px}
.r7-home .r7-process .approach-grid{display:block}
.r7-home .r7-process .approach-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:24px 90px;align-items:end}
.r7-home .r7-process .eyebrow{grid-column:1/-1;color:#c0cbc3}
.r7-home .r7-process .approach-heading h2{font-size:clamp(42px,4.4vw,66px);line-height:1.04;margin:0;max-width:740px}
.r7-home .r7-process .approach-heading>p:not(.eyebrow){color:#bec9c0;font-size:16px;line-height:1.8;margin:0 0 3px;max-width:380px}
.r7-home .r7-process .process{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:75px;margin-top:79px;padding:0}
.r7-home .r7-process .process::before{content:'';position:absolute;left:0;right:0;top:30px;height:1px;background:#ff654999;transform-origin:left;transition:transform 850ms cubic-bezier(.22,1,.36,1)}
.r7-home.motion-ready .r7-process .process::before{transform:scaleX(0)}
.r7-home.motion-ready .r7-process .process:has(>.is-visible)::before{transform:scaleX(1)}
.r7-home .r7-process .process article{position:relative;padding:0;border:0}
.r7-home .r7-process .process-marker{position:relative;display:inline-block;background:#101817;color:#ff6549;font-size:47px;line-height:1.15;letter-spacing:-.05em;padding-right:18px}
.r7-home .r7-process .process h3{color:#f8f7f3;font-size:34px;font-weight:450;letter-spacing:-.045em;margin:35px 0 15px}
.r7-home .r7-process .process p{font-size:15px;line-height:1.85;color:#bec9c0;max-width:340px}
.r7-home .r7-process .process-detail{display:block;color:#f8f7f3;font-size:12px;line-height:1.6;margin-top:25px}
.r7-home .faq-section{padding-top:105px;padding-bottom:105px}
.r7-home .faq-section h2{font-size:clamp(40px,4.1vw,60px);line-height:1.05;max-width:410px}
.r7-home .faq-list summary>span{color:#c3432e}
.r7-home .faq-list details[open] summary{color:#bd3c27}

.r7-home .contact-section{background:#ff6549;color:#101817;padding:102px 0 110px}
.r7-home .contact-grid{grid-template-columns:1fr 1fr;gap:90px}
.r7-home .contact-copy .eyebrow{color:#462019}
.r7-home .contact-copy h2{font-size:clamp(54px,5.65vw,85px);line-height:1.02;letter-spacing:-.055em;margin-top:32px;max-width:580px}
.r7-home .contact-copy h2>span{display:none}
.r7-home .contact-copy>p:not(.eyebrow){color:#382820;font-size:16px;line-height:1.85;max-width:360px}
.r7-home .contact-label{color:#422a20;font-size:11px}
.r7-home .contact-methods{margin-top:50px}
.r7-home .contact-methods>p{color:#101817;font-size:16px;line-height:2}
.r7-home .contact-copy>p.contact-small{color:#422a20;margin-top:32px;font-size:12px}
.r7-home .contact-links>a{color:#101817;border-color:#422a20}
.r7-home .form-heading{margin-bottom:32px}
.r7-home .form-heading h3{font-size:28px;font-weight:500;line-height:1.2}
.r7-home .form-heading p{display:none}
.r7-home .form-field label{font-weight:500;font-size:13px}
.r7-home .optional{color:#422a20}
.r7-home .form-field input,.r7-home .form-field select,.r7-home .form-field textarea{background:#fff1e6;border:1px solid #fff1e6;min-height:55px;border-radius:2px;color:#101817;font-size:16px}
.r7-home .form-field :is(input,select,textarea):focus{outline:2px solid #101817;outline-offset:3px;border-color:#101817}
.r7-home .form-field textarea::placeholder{color:#636660}
.r7-home .consent-label{color:#382820;font-size:13px}
.r7-home .consent-label a{color:#101817}
.r7-home .consent-label input{accent-color:#101817}
.r7-home .form-submit{background:#101817;color:#f8f7f3;border:0;min-height:61px}
.r7-home .form-status.is-success{color:#15301d;font-weight:550}
.r7-home .form-status.is-error{color:#511b0f;font-weight:550}
.r7-home .form-note{color:#382820}
.r7-home .site-footer{padding-top:47px;padding-bottom:31px}

@media(max-width:1050px){
 .r7-home .r7-process .approach-heading{grid-template-columns:1.1fr .9fr;gap:25px 45px}
 .r7-home .r7-process .process{gap:40px}
 .r7-home .r7-process .process h3{font-size:30px}
 .r7-home .contact-grid{grid-template-columns:1fr 1fr;gap:45px}
 .r7-home .contact-copy h2{font-size:60px}
}
@media(max-width:760px){
 .r7-home .integration-strip{padding-top:35px;padding-bottom:65px}
 .r7-home .integration-logos{justify-content:flex-start}
 .r7-home .r7-process{padding:73px 0}
 .r7-home .r7-process .approach-heading{grid-template-columns:1fr;gap:23px}
 .r7-home .r7-process .approach-heading h2{font-size:47px}
 .r7-home .r7-process .approach-heading>p:not(.eyebrow){max-width:500px;font-size:15px}
 .r7-home .r7-process .process{display:block;margin-top:46px}
 .r7-home .r7-process .process::before{top:0;bottom:0;left:24px;right:auto;width:1px;height:auto;transform:none!important}
 .r7-home .r7-process .process article{padding:0 0 44px 85px;min-height:160px}
 .r7-home .r7-process .process article:last-child{padding-bottom:0}
 .r7-home .r7-process .process-marker{position:absolute;left:0;top:0;font-size:37px;padding:4px 8px 13px 0}
 .r7-home .r7-process .process h3{font-size:30px;margin:0 0 12px;padding-top:6px}
 .r7-home .r7-process .process p{font-size:15px;max-width:470px}
 .r7-home .r7-process .process-detail{margin-top:16px;font-size:11px}
 .r7-home .faq-section{padding-top:72px;padding-bottom:72px}
 .r7-home .faq-section h2{font-size:43px}
 .r7-home .contact-section{padding:72px 0}
 .r7-home .contact-grid{grid-template-columns:1fr;gap:45px}
 .r7-home .contact-copy h2{font-size:62px;max-width:550px}
 .r7-home .contact-methods{margin-top:28px}
 .r7-home .contact-copy>p.contact-small{margin-top:20px}
}
@media(max-width:400px){
 .r7-home .r7-process .approach-heading h2{font-size:40px}
 .r7-home .r7-process .process article{padding-left:71px}
 .r7-home .r7-process .process h3{font-size:28px}
 .r7-home .faq-section h2{font-size:38px}
 .r7-home .contact-copy h2{font-size:53px}
}
.r7-home.reduced-motion .r7-process .process::before,.r7-home.keyboard-mode .r7-process .process::before{transform:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.r7-home .r7-process .process::before{transform:none!important;transition:none!important}}

.r7-home .contact-section :focus-visible{outline:3px solid #101817;outline-offset:4px}
.r7-home .contact-section .form-submit:focus-visible{outline:3px solid #101817;outline-offset:5px}

@media(min-width:761px) and (max-width:1000px){.r7-home .contact-grid{grid-template-columns:1fr;gap:45px}.r7-home .contact-copy h2{max-width:670px}.r7-home .enquiry-form{max-width:760px}}

/* Keep the enquiry form close to its introduction once the layout stacks. */
@media(max-width:1000px){
 .r7-home .contact-methods{margin-top:0}
 .r7-home .contact-methods>.contact-label,.r7-home .contact-methods>p,.r7-home .contact-copy>p.contact-small{display:none}
 .r7-home .contact-links:not([hidden]){margin-top:24px}
 .r7-home .contact-grid{gap:33px}
 .r7-home .contact-copy>p:not(.eyebrow){max-width:530px}
}
