/* Restaurant campaign only. Shared pages and lead-form behavior stay independent. */
.restaurant-lp {
    --rl-ink:#112d37;
    --rl-muted:#586764;
    --rl-paper:#f7f5ee;
    --rl-accent:#c54c2b;
    --rl-lime:#e0ecab;
    color:var(--rl-ink);
    background:var(--rl-paper);
    font-family:Inter,sans-serif;
    font-size:16px;
    line-height:1.65;
    overflow:clip}

.lpf-topbar > .container,
.rl-container {
    width:min(1220px,calc(100% - 80px));
    margin-inline:auto}
.restaurant-lp h1,.restaurant-lp h2,.restaurant-lp h3 {
    color:inherit}
.restaurant-lp h1,.restaurant-lp h2 {
    font-weight:600;
    letter-spacing:-.055em;
    line-height:1.08}
.restaurant-lp h1 {
    font-size:clamp(44px,4.2vw,62px);
    margin:22px 0}
.restaurant-lp h2 {
    font-size:clamp(34px,3.5vw,50px);
    margin:18px 0 24px}
.restaurant-lp em {
    font-family:Georgia,'Times New Roman',serif;
    font-weight:400;
    letter-spacing:-.045em}
.restaurant-lp p {
    margin:0 0 20px}
.rl-eyebrow {
    font-size:14px;
    letter-spacing:2px;
    font-weight:750;
    text-transform:uppercase;
    display:block}
.rl-dot {
    display:inline-block;
    width:7px;
    height:7px;
    background:var(--rl-accent);
    border-radius:50%;
    margin-right:8px}
.rl-hero {
    padding:66px 0 54px}
.rl-hero-grid {
    display:grid;
    grid-template-columns:1.08fr 1fr;
    gap:55px;
    align-items:center}
.rl-intro {
    font-size:21px;
    line-height:1.5;
    max-width:410px;
    font-weight:500}
.rl-hero-description {
    max-width:450px;
    color:var(--rl-muted);
    font-size:16px}
.rl-button {
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    background:var(--rl-accent);
    color:#fff;
    padding:17px 24px;
    border-radius:6px;
    font-weight:650;
    font-size:14px;
    line-height:1.5;
    box-shadow:0 5px 0 #9c3b2015;
    transition:background .2s,transform .2s}
.rl-button:hover {
    background:#a93c20;
    color:#fff;
    transform:translateY(-2px)}
.rl-button span {
    font-size:23px;
    line-height:1}
.restaurant-lp a:focus-visible,.restaurant-lp summary:focus-visible {
    outline:3px solid #167fa3;
    outline-offset:5px}
.restaurant-lp .rl-micro {
    font-size:14px;
    margin:13px 0 28px;
    color:var(--rl-muted)}
.rl-hero-trust {
    display:flex;
    flex-wrap:wrap;
    gap:10px 22px;
    font-size:14px;
    border-top:1px solid #d9ddd4;
    padding-top:21px}
.rl-hero-trust i {
    color:#657834;
    font-size:16px;
    margin-right:4px}

.rl-showcase {
    height:550px;
    position:relative;
    background:#183b42;
    border-radius:130px 12px 12px 12px;
    isolation:isolate;
    background-image:radial-gradient(ellipse at 80% 80%,#386057 0%,transparent 65%)}
.rl-showcase:before {
    content:'';
    position:absolute;
    width:340px;
    height:340px;
    border:1px solid #ffffff18;
    border-radius:50%;
    left:60px;
    top:100px;
    z-index:-1}
.rl-showcase-top {
    position:absolute;
    left:38px;
    right:28px;
    top:28px;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:24px;
    color:#dce6cd;
    font-size:14px;
    letter-spacing:1.5px}
.rl-showcase-top>span:last-child {
    font-size:34px}
.rl-device {
    position:absolute;
    width:230px;
    overflow:hidden;
    border:5px solid #fcfaf3;
    border-radius:17px;
    background:#fff;
    box-shadow:0 24px 35px #0005}
.rl-device img {
    width:100%;
    height:auto;
    display:block}
.rl-device-bar {
    height:24px;
    display:flex;
    align-items:center;
    gap:10px;
    background:#fcfaf3;
    padding:0 8px;
    color:#495451}
.rl-device-bar small {
    font-size:14px}
.rl-device-bar>span {
    width:5px;
    height:5px;
    background:#a8b7b0;
    border-radius:50%}
.rl-device-front {
    height:395px;
    top:99px;
    left:34px;
    transform:rotate(-7deg);
    z-index:2}
.rl-device-back {
    height:357px;
    top:82px;
    right:24px;
    transform:rotate(9deg)}
.rl-showcase-note {
    position:absolute;
    right:-17px;
    bottom:61px;
    z-index:3;
    background:var(--rl-lime);
    padding:19px 24px;
    display:flex;
    gap:17px;
    align-items:center;
    box-shadow:0 12px 26px #0002;
    transform:rotate(3deg);
    font-size:14px;
    line-height:1.5}
.rl-showcase-note i {
    font-size:26px}
.rl-showcase-caption {
    position:absolute;
    bottom:18px;
    left:30px;
    right:20px;
    text-align:center;
    color:#cfdbd8;
    font-size:14px;
    letter-spacing:.4px}

.rl-client-strip {
    border-top:1px solid #daddd3;
    border-bottom:1px solid #daddd3;
    padding:27px 0}
.rl-client-strip .rl-container {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:26px}
.rl-client-strip .rl-eyebrow {
    max-width:130px;
    color:var(--rl-muted)}
.rl-client-name {
    font-family:Georgia,serif;
    font-size:27px;
    font-weight:bold;
    text-align:center;
    line-height:1.15}
.rl-client-name small {
    display:block;
    font-family:Inter,sans-serif;
    font-size:14px;
    letter-spacing:2px;
    font-weight:500;
    margin-top:9px}
.rl-client-pizza {
    font-style:italic}
.rl-section {
    padding:90px 0}
.rl-section-heading {
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:40px;
    margin-bottom:34px}
.rl-section-heading h2 {
    margin-bottom:0}
.rl-section-heading>p {
    font-size:15px;
    color:var(--rl-muted);
    margin-bottom:3px}
.rl-service-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px}
.rl-service {
    padding:28px;
    background:#fffef9;
    border:1px solid #dde0d6;
    border-radius:9px}
.rl-service-number {
    display:block;
    font-size:14px;
    letter-spacing:1.3px;
    font-weight:650;
    color:var(--rl-muted)}
.rl-service>i {
    display:block;
    margin:23px 0 16px;
    font-size:28px;
    color:var(--rl-accent)}
.rl-service h3 {
    font-size:25px;
    letter-spacing:-1px;
    line-height:1.2;
    font-weight:600;
    margin-bottom:16px}
.rl-service p {
    font-size:14px;
    color:var(--rl-muted)}
.rl-service-tag {
    display:block;
    border-top:1px solid #e1e4da;
    padding-top:16px;
    font-size:14px;
    font-weight:650}
.restaurant-lp .rl-service-foot {
    text-align:center;
    font-size:14px;
    margin:25px 0 0;
    color:var(--rl-muted)}

.rl-work {
    background:var(--rl-ink);
    color:#f8f5e9}
.rl-work .rl-eyebrow {
    color:var(--rl-lime)}
.rl-work .rl-section-heading>p {
    color:#bfcecd}
.rl-work-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px}
.rl-project {
    margin:0;
    min-width:0}
.rl-project-window {
    height:350px;
    overflow:hidden;
    border-radius:8px;
    background:#304951;
    border:1px solid #ffffff26;
    padding:18px 18px 0}
.rl-project:nth-child(2) .rl-project-window {
    background:#626b50}
.rl-project:nth-child(3) .rl-project-window {
    background:#7b6454}
.rl-browser-dots {
    font-size:14px;
    letter-spacing:3px;
    color:#eee9d6;
    margin-bottom:12px}
.rl-project-window img {
    display:block;
    width:100%;
    height:auto;
    border-radius:3px 3px 0 0;
    transition:transform .6s}
.rl-project:hover img {
    transform:translateY(-12px)}
.rl-project figcaption {
    padding-top:20px}
.rl-project h3 {
    font-size:19px;
    font-weight:550;
    margin-bottom:4px}
.rl-project figcaption>span {
    font-size:14px;
    color:#becdca}
.rl-work-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    border-top:1px solid #ffffff29;
    margin-top:36px;
    padding-top:24px;
    font-size:14px;
    color:#bfcecd}
.rl-text-link {
    color:var(--rl-lime);
    font-weight:600}
.rl-text-link:hover {
    color:#fff}
.rl-text-link span {
    margin-left:15px}

.rl-process-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:90px}
.rl-process-grid>div>p {
    font-size:15px;
    max-width:355px;
    color:var(--rl-muted)}
.rl-steps {
    list-style:none;
    padding:0;
    margin:0}
.rl-steps li {
    display:flex;
    gap:25px;
    padding:24px 0;
    border-bottom:1px solid #daddd3}
.rl-steps li:first-child {
    padding-top:0}
.rl-steps li>span {
    font-size:14px;
    color:var(--rl-accent);
    font-weight:650;
    padding-top:4px}
.rl-steps h3 {
    font-size:19px;
    font-weight:600;
    letter-spacing:-.5px;
    margin-bottom:8px}
.rl-steps p {
    font-size:14px;
    color:var(--rl-muted);
    margin:0}

.rl-conversion {
    background:#e9eddf;
    scroll-margin-top:24px}
.rl-conversion-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:90px;
    align-items:center}
.rl-plan-copy>p {
    max-width:405px;
    color:var(--rl-muted);
    font-size:16px}
.rl-plan-list {
    list-style:none;
    margin:27px 0;
    padding:0;
    font-size:14px}
.rl-plan-list li {
    margin:12px 0;
    display:flex;
    gap:12px}
.rl-plan-list i {
    color:#4d6b35}
.rl-plan-promise {
    display:flex;
    flex-direction:column;
    border-top:1px solid #c9d0bc;
    padding-top:22px;
    font-size:14px}
.rl-plan-promise span {
    font-size:14px;
    color:var(--rl-muted);
    margin-top:4px}
.restaurant-lp .lf-stepped {
    border-radius:12px;
    box-shadow:0 20px 55px #20372812;
    --lf-navy:#112d37;
    --lf-navy-2:#23484e;
    --lf-cyan:#397579;
    --lf-text-muted:#596761}
.restaurant-lp .lf-stepped:before {
    background:var(--rl-accent);
    height:3px}
.restaurant-lp .lf-stepped-badge {
    background:#edf1e2;
    border:0;
    border-radius:4px;
    color:#4d643b;
    font-size:14px;
    letter-spacing:1.3px}
.restaurant-lp .lf-stepped-title {
    font-size:25px;
    letter-spacing:-.8px}
.restaurant-lp .lf-stepped-sub {
    font-size:14px}
.restaurant-lp .lf-continue-btn,.restaurant-lp .lf-submit-btn {
    background:var(--rl-accent);
    color:#fff;
    box-shadow:none;
    border-radius:6px;
    font-size:14px}
.restaurant-lp .lf-continue-btn:hover,.restaurant-lp .lf-submit-btn:hover {
    background:#a93c20;
    color:#fff}
.restaurant-lp .lf-dot.is-active:before {
    animation:none}
.restaurant-lp .lf-input {
    border-width:1px;
    border-radius:6px}
.restaurant-lp .lf-tag-trust {
    font-size:14px}
.rl-faq-grid {
    display:grid;
    grid-template-columns:1fr 1.15fr;
    gap:70px}
.rl-questions details {
    border-bottom:1px solid #d5dbcf}
.rl-questions summary {
    padding:20px 32px 20px 0;
    cursor:pointer;
    list-style:none;
    font-size:14px;
    font-weight:600;
    position:relative}
.rl-questions summary::-webkit-details-marker {
    display:none}
.rl-questions summary:after {
    content:'+';
    position:absolute;
    right:2px;
    top:16px;
    font-size:23px;
    font-weight:400;
    color:var(--rl-accent)}
.rl-questions details[open] summary:after {
    content:'−'}
.rl-questions details p {
    font-size:14px;
    color:var(--rl-muted);
    padding-right:25px}
.rl-last-word {
    padding:32px 0;
    border-top:1px solid #daddd3}
.rl-last-word .rl-container {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:25px}
.rl-last-word p {
    font-size:24px;
    font-weight:550;
    letter-spacing:-.7px;
    margin:0}
.rl-mobile-cta {
    display:none}

@media(min-width:1500px) {
    .rl-hero {
    padding-block:85px}
.rl-showcase {
    height:580px}
.rl-device-front {
    top:115px}
.rl-device-back {
    top:97px}
}

@media(max-width:1100px) {
    .lpf-topbar > .container,
    .rl-container {
    width:calc(100% - 48px)}
.rl-hero-grid {
    gap:32px}
.rl-showcase {
    height:510px}
.rl-device {
    width:205px}
.rl-device-front {
    left:20px;
    height:360px}
.rl-device-back {
    right:15px;
    height:330px}
.rl-showcase-note {
    right:-8px;
    bottom:49px}
.rl-conversion-grid,.rl-process-grid {
    gap:45px}
.rl-project-window {
    height:300px}
.rl-service {
    padding:23px}
.rl-faq-grid {
    gap:40px}
}

@media(max-width:800px) {
    .rl-hero-grid {
    grid-template-columns:1fr;
    gap:38px}
.rl-hero {
    padding-top:42px}
.restaurant-lp h1 {
    font-size:58px;
    max-width:620px}
.rl-hero-description {
    max-width:530px}
.rl-showcase {
    height:470px;
    max-width:560px;
    width:100%;
    margin:auto}
.rl-device-front {
    left:70px;
    top:64px}
.rl-device-back {
    right:65px;
    top:53px}
.rl-showcase-note {
    right:18px}
.rl-showcase-top {
    top:12px}
.rl-service-grid {
    gap:12px}
.rl-service {
    padding:19px}
.rl-service h3 {
    font-size:21px}
.rl-section {
    padding:65px 0}
.rl-section-heading {
    display:block}
.rl-section-heading>p {
    margin-top:20px}
.rl-project-window {
    height:260px;
    padding:12px 12px 0}
.rl-work-grid {
    gap:18px}
.rl-process-grid,.rl-conversion-grid,.rl-faq-grid {
    grid-template-columns:1fr;
    gap:30px}
.rl-plan-copy>p,.rl-process-grid>div>p {
    max-width:600px}
.rl-form {
    max-width:560px;
    width:100%;
    margin:auto}
.rl-work-bottom {
    align-items:start;
    flex-direction:column}
.rl-faq h2 {
    margin-bottom:0}
.rl-client-name {
    font-size:22px}
.rl-client-strip .rl-eyebrow {
    font-size:14px;
    max-width:90px}
}

@media(max-width:575px) {
    .lpf-topbar > .container,
    .rl-container {
    width:calc(100% - 36px)}
.restaurant-lp h1 {
    font-size:45px}
.restaurant-lp h2 {
    font-size:36px}
.rl-eyebrow {
    font-size:14px;
    letter-spacing:1.4px}
.rl-intro {
    font-size:19px}
.rl-hero-description {
    font-size:15px}
.rl-button {
    width:100%;
    padding:16px 20px;
    font-size:14px}
.restaurant-lp .rl-micro {
    font-size:14px;
    line-height:1.7}
.rl-hero-trust {
    gap:10px 15px;
    font-size:14px}
.rl-showcase {
    height:420px;
    border-top-left-radius:80px}
.rl-showcase-top {
    font-size:14px;
    gap:12px;
    right:17px}
.rl-device {
    width:180px;
    border-width:4px}
.rl-device-front {
    left:22px;
    top:72px;
    height:295px}
.rl-device-back {
    right:16px;
    top:62px;
    height:275px}
.rl-showcase-note {
    font-size:14px;
    padding:14px 16px;
    bottom:44px;
    right:0;
    gap:12px}
.rl-showcase-caption {
    font-size:14px;
    bottom:15px;
    left:10px;
    right:10px}
.rl-client-strip .rl-container {
    flex-wrap:wrap;
    justify-content:center;
    gap:24px}
.rl-client-strip .rl-eyebrow {
    max-width:none;
    width:100%;
    text-align:center}
.rl-client-name {
    font-size:19px}
.rl-client-name small {
    font-size:14px;
    letter-spacing:1px}
.rl-client-name:last-child {
    display:none}
.rl-section {
    padding:52px 0}
.rl-service-grid,.rl-work-grid {
    grid-template-columns:1fr}
.rl-service {
    padding:25px}
.rl-service h3 {
    font-size:26px}
.rl-service h3 br {
    display:none}
.rl-service>i {
    margin:15px 0}
.rl-service-grid {
    gap:15px}
.restaurant-lp .rl-service-foot {
    line-height:1.9}
.rl-service-foot strong {
    display:block}
.rl-project-window {
    height:350px;
    padding:17px 24px 0}
.rl-work-grid {
    gap:32px}
.rl-project h3 {
    font-size:21px}
.rl-project figcaption>span {
    font-size:14px}
.rl-plan-list {
    font-size:14px}
.rl-last-word .rl-container {
    flex-direction:column;
    align-items:stretch}
.rl-last-word p {
    font-size:23px}
.rl-mobile-cta {
    display:block;
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    z-index:30;
    background:#f7f5eef5;
    border-top:1px solid #daddd3;
    padding:10px 18px calc(10px + env(safe-area-inset-bottom))}
.lpf-footer {
    padding-bottom:110px!important}
.restaurant-lp .lf-stepped-title {
    font-size:23px}
}

@media(prefers-reduced-motion:reduce) {
    .restaurant-lp *,.restaurant-lp *:before,.restaurant-lp *:after {
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important}
}


.rl-form {
    scroll-margin-top:24px}



.rl-mobile-cta[hidden] {
    display:none}



/* Match the campaign grid instead of Bootstrap's narrower header container. */
.lpf-topbar > .container {
    max-width: none;
    padding-inline: 0;
}

/* Let the logo use available mobile space while protecting the phone number. */
@media (max-width: 575.98px) {
    .lpf-topbar > .container { gap: 16px; }
    .lpf-topbar .lpf-logo {
        width: 200px;
        min-width: 0;
        flex: 0 1 200px;
    }
    .lpf-topbar .lpf-phone { flex: 0 0 auto; }
}

/* Frosted surfaces: solid fallbacks first, transparency where blur is supported. */
.rl-hero {
    background:
        radial-gradient(ellipse at 87% 28%, rgba(191, 213, 185, .38), transparent 48%),
        radial-gradient(ellipse at 4% 88%, rgba(239, 209, 182, .24), transparent 42%);
}
.rl-showcase {
    border: 1px solid rgba(255, 255, 255, .5);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .28), 0 28px 65px -35px rgba(17, 45, 55, .5);
    background-image:
        radial-gradient(ellipse at 90% 95%, rgba(180, 207, 144, .35), transparent 62%),
        linear-gradient(135deg, rgba(255, 255, 255, .08), transparent 55%);
}
.rl-showcase-note {
    background: #e1e9c5;
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 12px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), 0 14px 35px rgba(8, 30, 34, .18);
}
.rl-device {
    border-color: #e6eae1;
    box-shadow: inset 0 1px 0 #fff, 0 24px 40px rgba(0, 0, 0, .3);
}
.rl-services {
    background:
        radial-gradient(ellipse at 12% 60%, rgba(208, 220, 184, .55), transparent 48%),
        radial-gradient(ellipse at 90% 70%, rgba(236, 211, 192, .5), transparent 45%);
}
.rl-service {
    background: #fafbf5;
    border-color: rgba(255, 255, 255, .92);
    border-radius: 16px;
    box-shadow: inset 0 1px 0 #fff, 0 14px 35px -20px rgba(35, 59, 48, .2);
    transition: transform .2s ease, box-shadow .2s ease;
}
.rl-service:hover {
    transform: translateY(-4px);
    box-shadow: inset 0 1px 0 #fff, 0 22px 40px -22px rgba(35, 59, 48, .3);
}
.rl-project-window {
    border-color: rgba(255, 255, 255, .28);
    border-radius: 14px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 20px 35px -25px rgba(0, 0, 0, .4);
}
.rl-conversion {
    background:
        radial-gradient(ellipse at 82% 30%, rgba(197, 214, 155, .8), transparent 42%),
        radial-gradient(ellipse at 60% 90%, rgba(223, 181, 152, .38), transparent 40%),
        #e9eddf;
}
.restaurant-lp .lf-stepped {
    background: #fafbf6;
    border: 1px solid rgba(255, 255, 255, .95);
    border-radius: 20px;
    box-shadow: inset 0 1px 0 #fff, 0 25px 65px -25px rgba(32, 55, 40, .24);
}
.restaurant-lp .lf-stepped-head,
.restaurant-lp .lf-progress,
.restaurant-lp .lf-step-label-row {
    background: transparent;
}
.restaurant-lp .lf-body .form-control {
    background: rgba(255, 255, 255, .88);
}
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .rl-showcase-note {
        background: rgba(232, 242, 201, .78);
        -webkit-backdrop-filter: blur(18px) saturate(135%);
        backdrop-filter: blur(18px) saturate(135%);
    }
    .rl-device {
        border-color: rgba(255, 255, 255, .65);
    }
    .rl-service {
        background: linear-gradient(135deg, rgba(255, 255, 255, .75), rgba(255, 255, 255, .4));
        -webkit-backdrop-filter: blur(14px);
        backdrop-filter: blur(14px);
    }
    .restaurant-lp .lf-stepped {
        background: rgba(255, 255, 255, .7);
        -webkit-backdrop-filter: blur(22px) saturate(120%);
        backdrop-filter: blur(22px) saturate(120%);
    }
    .rl-mobile-cta {
        background: rgba(247, 245, 238, .82);
        -webkit-backdrop-filter: blur(16px);
        backdrop-filter: blur(16px);
    }
}
@media (prefers-reduced-transparency: reduce) {
    .rl-showcase-note { background: #e1e9c5; }
    .rl-service, .restaurant-lp .lf-stepped { background: #fafbf6; }
    .rl-mobile-cta { background: #f7f5ee; }
    .rl-showcase-note, .rl-service, .restaurant-lp .lf-stepped, .rl-mobile-cta {
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
}

/* A readable restaurant experience at every size. */
.restaurant-lp :is(h1,h2,h3) { text-wrap: balance; letter-spacing: -.03em; }
.restaurant-lp em { letter-spacing: -.025em; }
.restaurant-lp p { text-wrap: pretty; }
.restaurant-lp .rl-eyebrow { font-size: 14px; letter-spacing: .1em; line-height: 1.6; }
.restaurant-lp .rl-hero-description { font-size: 17px; line-height: 1.75; }
.restaurant-lp .rl-micro { font-size: 14px; line-height: 1.65; }
.restaurant-lp .rl-hero-trust { font-size: 14px; gap: 12px 24px; line-height: 1.6; }
.restaurant-lp .rl-button { font-size: 16px; min-height: 54px; gap: 16px; line-height: 1.45; }
.restaurant-lp .rl-section { padding-block: clamp(64px,7vw,104px); }
.restaurant-lp .rl-section-heading > p { font-size: 17px; line-height: 1.7; max-width: 28em; }
.restaurant-lp .rl-service { padding: 32px; border-radius: 16px; box-shadow: none; }
.restaurant-lp .rl-service h3 { font-size: 27px; letter-spacing: -.025em; line-height: 1.25; }
.restaurant-lp .rl-service p, .restaurant-lp .rl-steps p, .restaurant-lp .rl-questions p { font-size: 16px; line-height: 1.75; }
.restaurant-lp .rl-service-number, .restaurant-lp .rl-service-tag { font-size: 14px; line-height: 1.6; letter-spacing: .02em; }
.restaurant-lp .rl-service-foot { font-size: 16px; line-height: 1.7; }
.restaurant-lp .rl-project figcaption > span, .restaurant-lp .rl-work-bottom { font-size: 15px; line-height: 1.6; }
.restaurant-lp .rl-text-link { font-size: 16px; line-height: 1.6; }
.restaurant-lp .rl-plan-list { font-size: 16px; line-height: 1.65; }
.restaurant-lp .rl-plan-list i { flex-shrink: 0; }
.restaurant-lp .rl-plan-promise { font-size: 16px; }
.restaurant-lp .rl-plan-promise span { font-size: 14px; line-height: 1.6; }
.restaurant-lp .rl-questions summary { font-size: 17px; line-height: 1.5; padding-block: 24px; }
.restaurant-lp .rl-client-name { font-size: 28px; line-height: 1.25; }
.restaurant-lp .rl-client-name small { font-size: 14px; letter-spacing: .06em; line-height: 1.5; }
.restaurant-lp .rl-showcase-top > span:first-child, .restaurant-lp .rl-device-bar small { display: none; }
.restaurant-lp .rl-showcase-note { font-size: 16px; line-height: 1.5; transform: none; right: 20px; bottom: 72px; }
.restaurant-lp .rl-showcase-caption { font-size: 14px; line-height: 1.45; bottom: 20px; }
.restaurant-lp .rl-steps h3 { font-size: 21px; line-height: 1.4; }
.restaurant-lp .lf-stepped-title { line-height: 1.25; letter-spacing: -.025em; }
@media (max-width: 767.98px) {
    .restaurant-lp .rl-client-strip .rl-container { display: grid; grid-template-columns: 1fr; gap: 28px; }
    .restaurant-lp .rl-client-strip .rl-eyebrow { max-width: none; font-size: 14px; text-align: center; }
    .restaurant-lp .rl-client-name:last-child { display: block; }
    .restaurant-lp .rl-client-name { font-size: 26px; }
    .restaurant-lp .rl-client-name small { font-size: 14px; }
    .restaurant-lp .rl-section-heading { gap: 24px; }
    .restaurant-lp .rl-work-bottom { gap: 20px; align-items: flex-start; }
}
@media (max-width: 575.98px) {
    .restaurant-lp h1 { font-size: clamp(36px,10.5vw,45px); line-height: 1.12; }
    .restaurant-lp h2 { font-size: clamp(30px,8.5vw,37px); line-height: 1.18; }
    .restaurant-lp .rl-intro { font-size: 19px; line-height: 1.6; }
    .restaurant-lp .rl-hero-trust { flex-direction: column; }
    .restaurant-lp .rl-hero { padding-top: 40px; }
    .restaurant-lp .rl-service { padding: 28px; }
    .restaurant-lp .rl-showcase-note { font-size: 15px; right: 12px; bottom: 76px; padding: 15px 18px; }
    .restaurant-lp .rl-showcase-caption { left: 18px; right: 18px; }
    .restaurant-lp .rl-button { padding: 16px 18px; }
    .restaurant-lp .rl-mobile-cta .rl-button { font-size: 15px; }
    .restaurant-lp .rl-last-word p { font-size: 28px; line-height: 1.3; }
}