/* Approved September review adjustments, loaded after the saved Figma layouts. */
#desktop-page #navigation [data-node-id="7:826"]{pointer-events:auto;cursor:pointer}
#desktop-page #navigation [data-node-id="10:18"]{left:340px}
#desktop-page #navigation [data-node-id="10:16"]{left:416px}
#desktop-page #navigation [data-node-id="10:26"]{left:440px;display:flex;width:742px;gap:22px}
#desktop-page #navigation .nav-link{position:relative;left:auto!important;width:auto;height:15px;flex:none;white-space:nowrap}
#desktop-page #comparison [data-node-id="7:93"] p{font-weight:700}
#desktop-page .comparison-toggle::after{background-image:url('assets/review/down-caret.png');width:20px;height:20px}
#mobile-page .m-control-icon--comparison-down{content:url('assets/review/down-caret.png');width:18px;height:18px}
#desktop-page [data-node-id="7:426"] p{display:flex;align-items:center;gap:.25em}
.packages-chevron{display:inline-block;position:relative;top:-.06em}
#desktop-page #contact [data-node-id="7:77"]{background:var(--orange);border-radius:999px}
#desktop-page #contact [data-node-id="7:77"]>:first-child{display:none}
#desktop-page #contact [data-node-id="7:77"]:hover,#mobile-page #m-contact .m-button--orange:hover{background:#000;color:#fff}
#desktop-page #contact [data-node-id="7:61"]::after{content:"";position:absolute;left:251.51px;top:48.56px;width:1411.975px;height:374.887px;box-sizing:border-box;border:1px solid #1d1d1d;border-radius:27px;z-index:1;pointer-events:none}
#desktop-page #contact [data-node-id="7:75"],#desktop-page #contact [data-node-id="7:76"]{z-index:2}
#desktop-page .accreditation-badges{grid-template-columns:154px 180px 180px 154px 154px;gap:20px;height:154px}
.accreditation-badges .review-badge,.accreditation-badges .rating-widget{width:154px;height:154px;aspect-ratio:1;flex:none}
#desktop-page .accreditation-badges .review-badge img{width:100%;height:100%;object-fit:contain}
.rating-widget{position:relative;display:block;overflow:hidden;border:1px solid #bcbcbc;border-radius:4px;background:#fff}
.rating-widget>div{position:absolute;left:0;top:0;transform:translate(var(--widget-left,0px),var(--widget-top,0px)) scale(var(--widget-scale,1));transform-origin:top left}
.rating-widget--clutch>.clutch-widget{width:120px!important;height:112px!important}
.rating-widget--clutch iframe{height:112px!important}
.rating-widget--goodfirms .goodfirm-widget{width:240px!important;height:160px!important;clip-path:inset(3px 2px)}
.rating-widget iframe{display:block;border:0;max-width:none!important;width:100%!important}
/* Preserve the wider heading and the established split between partners and ratings. */
#desktop-page [data-node-id="7:723"]{width:400px}
#desktop-page [data-node-id="7:723"] p{font-size:32px;white-space:nowrap}
.comparison-panel table{table-layout:fixed;background:white}
.comparison-panel thead th{background:#050505;color:white;font-weight:700}
.comparison-panel thead th:first-child{background:white;color:#111;width:22%}
.comparison-panel thead th:nth-child(2){background:var(--orange)}
.comparison-panel tbody th{font-weight:700;background:white}
.comparison-panel tbody td:nth-child(2){background:#f2ece7}
.comparison-note{font-size:14px;line-height:1.5;margin-top:20px;color:#555}
.review-faqs details{border-bottom:1px solid #bcbcb7}
.review-faqs summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;min-height:54px;padding:12px 0}
.review-faqs summary::-webkit-details-marker{display:none}
.review-faqs summary span{color:var(--orange);font-size:27px;flex:none}
.review-faqs details p{padding:4px 0 22px;line-height:1.5;color:#535353;max-width:1120px}
.extra-faqs[hidden],.comparison-model[hidden]{display:none}
.faq-more{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;margin:20px auto 0;padding:0;background:none;color:#000;border:0;border-radius:0;font-family:inherit;font-size:18px;line-height:1.25;font-weight:400;cursor:pointer}
.faq-caret{flex:none;width:14px;height:9px;background:#000;mask:url('assets/review/down-caret.png') center/14px 14px no-repeat;transform:translateY(-1px);transition:rotate .18s}
.faq-more[aria-expanded="true"] .faq-caret{rotate:180deg}
#desktop-page #faqs{height:var(--review-faq-height,460px)!important}
#desktop-page .review-faq-section{position:relative;width:1416px;margin-left:251px;padding-top:120px;padding-bottom:28px;font-size:23px}
#desktop-page .review-faq-section>[data-node-id="7:29"],#desktop-page .review-faq-section>[data-node-id="7:31"]{left:0}
#desktop-page .review-faq-section>.back-to-top{position:relative;display:block;left:auto;top:auto!important;translate:none;margin:24px auto 0;width:34px;height:20px}
@media(max-width:1023px){
 #mobile-page .m-button{justify-content:center;text-align:center;align-items:center}
 #mobile-page .m-button--comparison{font-weight:700}
 #mobile-page .m-hero-actions{flex-wrap:wrap}
 #mobile-page .m-hero-actions>.m-button{font-size:14px;padding-inline:16px}
 #mobile-page .m-contact-actions .contact-label{top:0}
 #mobile-page .m-partners.accreditation-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;align-items:center}
 #mobile-page .accreditation-badges :is(.review-badge,.rating-widget){width:min(154px,calc((100% - 8px)/2));height:auto;aspect-ratio:1;max-width:none}
 #mobile-page .accreditation-badges .review-badge img{width:100%;height:100%;aspect-ratio:1;object-fit:contain;max-width:none}
 #mobile-page .m-quote-body{display:flex;align-items:center;justify-content:center;background:#000 url('assets/review/testimonial-background.png') center/100% 100% no-repeat;border:1px solid #555;border-radius:25px}
 #mobile-page .m-quote-body::before,#mobile-page .m-quote-body::after{position:absolute;color:#ff8b16;font-family:Georgia,serif;font-size:62px;font-weight:900;line-height:1}
 #mobile-page .m-quote-body::before{content:'“';left:15px;top:6px}
 #mobile-page .m-quote-body::after{content:'”';right:15px;bottom:0}
 #mobile-page .m-quote-body p{color:#ff8b16}
 #mobile-page .m-pilot-art{width:260px;height:300px}
 #mobile-page .m-pilot-stamp{left:64px;right:auto;top:0;width:177px;height:294px;object-fit:contain}
 #mobile-page .m-pilot-hero{left:0;bottom:0;width:115px}
 .comparison-tabs{display:flex;border-bottom:2px solid var(--orange);gap:2px}
 .comparison-tabs [role="tab"]{flex:1;padding:14px 6px;background:#1d1d1d;color:white;font-size:13px;line-height:1.3;font-weight:700;min-height:48px}
 .comparison-tabs [aria-selected="true"]{background:var(--orange)}
 .comparison-model{background:white;text-align:left}
 .comparison-model dl{margin:0}
 .comparison-model dl>div{padding:18px 16px;border-bottom:1px solid #d4d3ce}
 .comparison-model dt{font-weight:700;margin-bottom:8px}
 .comparison-model dd{margin:0;line-height:1.5}
 .comparison-note{font-size:12px;text-align:left}
 .review-faqs{font-size:16px}
 .review-faqs summary{padding-block:18px}
 #mobile-page :is(.review-viewport,.outcome-viewport,.capability-viewport) img{user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}
}
@media(max-width:599px){
 #mobile-page .m-header{min-height:52px;height:52px;padding-block:4px}
 #mobile-page .m-header>a img{width:73px}
 #mobile-page .m-header .m-button--header{min-height:34px;border-radius:999px;font-size:11px;padding:5px 9px}
 #mobile-page .m-header .m-booking-portrait{width:31px;height:25px}
 #mobile-page .m-menu-toggle{width:36px;height:36px;padding:7px}
 #mobile-menu{max-height:calc(100dvh - 52px)}
 #mobile-page .m-hero-top{padding-top:28px}
 #mobile-page .m-hero h1{line-height:1.02}
 #mobile-page .m-hero h1 .m-scale{margin-top:18px}
 #mobile-page .m-hero h1 .m-scale::before{top:0}
 #mobile-page .m-hero-scene{height:217px;margin-top:-78px}
 #mobile-page .m-hero-art{width:520px;margin-top:-55px}
 #mobile-page .m-hero-art img{width:100%;height:auto;clip-path:none}
 #mobile-page .m-hero-orange{padding-top:16px;padding-bottom:23px;background:linear-gradient(#d96825e8,#d96825e8),url('assets/superman12-9526d.png') center -260px/520px auto no-repeat,var(--orange)}
 #mobile-page .m-hero-copy{font-size:18px;line-height:1.17}
 #mobile-page .m-hero-actions>.m-button{min-height:50px;padding:13px 20px 11px;border-radius:999px;font-size:16px}
 #mobile-page .m-proof{position:relative;background:var(--paper)}
}
@media(max-width:1023px){
 #mobile-page .m-hero{display:flex;flex-direction:column;overflow:hidden}
 #mobile-page .m-hero-top{order:1;position:relative;z-index:2}
 #mobile-page .m-hero-scene{order:2;height:clamp(217px,36vw,320px);margin-top:-78px;background:var(--orange);overflow:hidden}
 #mobile-page .m-hero-art{width:max(520px,100%);max-width:none;height:auto;aspect-ratio:auto;margin:-55px 0 0 50%;transform:translateX(-50%);overflow:visible}
 #mobile-page .m-hero-art img{width:100%;height:auto;clip-path:none}
 #mobile-page .m-hero-orange{order:3;position:relative;z-index:1}
 #mobile-page .m-proof{order:4}
}
@media(min-width:600px) and (max-width:1023px){
 #mobile-page .m-hero-scene{height:clamp(300px,50vw,420px);margin-top:-83px}
 /* The scene supplies the orange band behind the title and the photo. */
 #mobile-page .m-hero h1 .m-scale{background:transparent}
 #mobile-page .m-hero h1 .m-scale::before{display:none}
 #mobile-page .m-hero-art{width:min(800px,100%);margin-top:-55px}
}
@media(max-width:380px){
 #mobile-page .m-hero h1{line-height:1.08}
 #mobile-page .m-hero-art img{clip-path:none}
 #mobile-page .m-trial-callout strong{font-size:22px}
}
@media(min-width:500px) and (max-width:599px){
 #mobile-page .m-hero h1 .m-scale{padding-top:8px;padding-bottom:4px}
}
@media(max-width:1023px){
 .comparison-tabs [role="tab"]{font-size:clamp(10px,2.65vw,13px);text-align:center;white-space:normal;overflow-wrap:anywhere}
}
.faq-more{text-transform:none}
/* Keep the original inner panel's rounded outline around the replacement image. */
#desktop-page [data-node-id="7:43"]{border:1px solid #555;border-radius:38.25px;overflow:hidden;background:#000}
#desktop-page [data-node-id="7:43"]::before,#desktop-page [data-node-id="7:43"]::after{position:absolute;z-index:2;color:#ff8b16;font-family:Georgia,serif;font-size:80px;font-weight:900;line-height:1;pointer-events:none}
#desktop-page [data-node-id="7:43"]::before{content:'“';left:23px;top:15px}
#desktop-page [data-node-id="7:43"]::after{content:'”';right:23px;bottom:0}
#desktop-page .review-track>.review-card{border-radius:38px;overflow:hidden}
#desktop-page .review-track>.review-card::after{content:"";position:absolute;z-index:4;inset:0;border:1px solid #999;border-radius:inherit;pointer-events:none}
#desktop-page [data-node-id="7:46"],#desktop-page [data-node-id="7:48"]{display:none}
#desktop-page [data-node-id="7:50"]{top:111px!important}
#desktop-page [data-node-id="7:50"] p{color:#ff8b16}

@media(max-width:1023px){
 /* Use a crisp CSS outline behind the supplied transparent superhero. */
 #mobile-page .m-commercial.m-highlight .m-commercial-body{border:1px solid #777;border-radius:22px;background:#fff;aspect-ratio:317/313}
 #mobile-page .m-commercial.m-highlight h3{margin-bottom:32px}
 #mobile-page .m-commercial.m-highlight .m-commercial-hero{position:absolute;right:30px;top:-43px;width:44px;height:auto;object-fit:contain;max-width:none;pointer-events:none}
 /* The comparison image contains the icons; let its native ratio meet the bar. */
 #mobile-page .m-comparison-art{aspect-ratio:5496/4241;margin-bottom:-1px}
}
@media(max-width:599px){
 #mobile-page .m-contact-panel{max-width:calc((100vw - 24px)*352/371);border:0;border-radius:0;background:transparent;aspect-ratio:352/671;margin-bottom:0}
 #mobile-page .m-contact-art{display:block;position:absolute;inset:0;width:100%;height:100%;margin:0;overflow:visible}
 #mobile-page .m-contact-art>:not(.m-contact-banner){display:none}
 #mobile-page .m-contact-banner{position:absolute;left:0;top:0;width:calc(100% * 371 / 352);height:auto;max-width:none;pointer-events:none}
 #mobile-page #m-contact{padding-bottom:16px}
 #mobile-page #m-testimonials{padding-top:20px}
}
@media(min-width:600px) and (max-width:1023px){
 #mobile-page .m-contact-banner{display:none}
}

@media(max-width:1023px){.faq-more{font-size:16px}}
/* Scale the painter and cloud as one composition using the saved desktop coordinates.
   Painter: (0,24), 423x341. Cloud: (221,0), 127x86. Canvas: 423x365. */
@media(max-width:1023px){
 #mobile-page .m-capabilities [data-capability-number="3"] .m-capability-scene{display:flex;align-items:flex-end;justify-content:center}
 .m-capability-composition{position:relative;width:min(100%,266.548px);aspect-ratio:423/365;flex:none}
 #mobile-page .m-capability-composition .m-capability-art{position:absolute;left:0;top:6.575342%;width:100%;height:93.424658%;margin:0;object-fit:contain}
 #mobile-page .m-capability-composition .m-capability-cloud{position:absolute;left:52.245863%;right:auto;top:0;width:30.023641%;height:23.561644%;margin:0;object-fit:contain}
}

/* Finish the card outline with a single vector stroke across all four corners. */
#desktop-page .outcome-slide [data-node-id="7:114"]{background:#f3f2ed;border-radius:15px;overflow:hidden}
#desktop-page .outcome-slide [data-node-id="7:114"] img{display:none}
#desktop-page .outcome-slide [data-node-id="7:115"]{border-radius:15px 0 0 15px;overflow:hidden}
#desktop-page .outcome-slide::after{content:"";position:absolute;left:134.25px;top:133.26px;width:1123.993px;height:459.432px;z-index:3;border:.5px solid #1d1d1d;border-radius:15px;pointer-events:none}
#desktop-page #comparison [data-node-id="7:102"]{top:-11px!important}
/* The pedestal image must not mask the half-pixel top edge on desktop. */
@media(min-width:1680px){
 #desktop-page #comparison [data-node-id="7:92"]::after{content:"";position:absolute;left:912.02px;top:-.5px;width:407px;border-top:1px solid #1d1d1d;z-index:1;pointer-events:none}
}
#desktop-page #hero [data-node-id="7:782"],#desktop-page #contact [data-node-id="7:82"]{border-radius:999px;overflow:hidden}
#desktop-page #hero [data-node-id="7:782"]>:first-child,#desktop-page #contact [data-node-id="7:82"]>:first-child{border-radius:inherit}
@media(max-width:1023px){
 #mobile-page :is(.m-hero-actions,.m-contact-actions) .m-button{border-radius:999px}
 #mobile-page .m-quote-body p{max-width:80%;margin:auto;text-align:center}
 #mobile-page .m-testimonials .m-quote{border-radius:30px;overflow:hidden}
 #mobile-page .m-footer-links{column-gap:12px}
 #mobile-page .m-footer-links a{min-height:28px}
 #mobile-page .m-footer-links a:not(:last-child)::after{right:-6px}
}

/* September 24: align the visible policy edge and its hit targets with the rule. */
@media(max-width:1023px){
 #mobile-page .m-button>.mobile-cta-label{font:inherit;position:relative;top:1pt}
 /* Reserve each arrow's full hit area outside the testimonial card. */
 #mobile-page .testimonials-carousel--mobile .review-viewport{margin-inline:22px}
 #mobile-page .testimonials-carousel--mobile .review-arrow{background:transparent}
}
@media(min-width:1024px){
 .desktop-footer-content .footer-policy{transform:translateX(21px)}
 .desktop-footer-content .footer-policy-4{width:125px}
}
@media(max-width:1023px){
 /* Preserve the source ticket/figure offsets: stamp (80,0), figure (0,243). */
 #mobile-page .m-pilot-art{width:257px;height:344px}
 #mobile-page .m-pilot-stamp{left:80px;top:0;width:177px;height:294px}
 #mobile-page .m-pilot-hero{left:0;top:243px;bottom:auto;width:115px;height:101px}
 /* Seat the shoulder rays on the card rule, rather than floating above it. */
 #mobile-page .m-commercial.m-highlight .m-commercial-body::before{content:"";position:absolute;right:23px;top:-1px;width:57px;height:2px;background:#fff;pointer-events:none}
 #mobile-page .m-commercial.m-highlight .m-commercial-hero{right:23px;top:-28px;width:57px;height:89px}
 /* Coordinates from the 412px Mobile Compact frame, below its 52px header.
    The exported image already includes the exact frame crop and orange tint. */
 #mobile-page .m-hero{container-type:inline-size;background:#fff;display:block}
 #mobile-page .m-hero-visual{position:relative;height:149.514563cqw;background:linear-gradient(#fff 0 33.495146cqw,#f06200 33.495146cqw)}
 #mobile-page .m-hero-top{position:absolute;inset:0;z-index:2;padding:0;overflow:visible;pointer-events:none}
 #mobile-page .m-hero-top .m-eyebrow{position:absolute;left:6.31068cqw;top:6.31068cqw;font-size:3.006475cqw;line-height:1;margin:0}
 #mobile-page .m-hero h1{position:absolute;left:6.31068cqw;top:13.125143cqw;width:84.951456cqw;font-size:12.025902cqw;line-height:.9;letter-spacing:0;margin:0;color:#000}
 #mobile-page .m-hero h1 .m-scale{padding:0;margin:0;background:none;color:#fff}
 #mobile-page .m-hero h1 .m-scale::before{display:none}
 #mobile-page .m-hero-scene{position:absolute;left:0;top:33.495146cqw;width:100%;height:116.019417cqw;margin:0;background:none;overflow:hidden}
 #mobile-page .m-hero-art{width:100%;height:100%;max-width:none;margin:0;transform:none;aspect-ratio:auto;overflow:hidden}
 #mobile-page .m-hero-art img{display:block;width:100%;height:100%;max-width:none;clip-path:none;mix-blend-mode:normal}
 #mobile-page .m-hero-orange{position:absolute;left:0;top:86.165049cqw;width:100%;height:63.349515cqw;padding:0;z-index:1;background:rgb(240 98 0 / 81%);overflow:visible}
 #mobile-page .m-hero-copy{position:absolute;left:6.067961cqw;top:3.883495cqw;width:82.524272cqw;font-size:4.069093cqw;line-height:5.072816cqw;font-weight:500;margin:0;color:white}
 #mobile-page .m-hero-actions{position:absolute;left:5.825243cqw;top:24.029126cqw;gap:3.15534cqw;flex-wrap:nowrap}
 #mobile-page .m-hero-actions>.m-button{width:57.76699cqw;height:12.067961cqw;min-height:0;flex:none;padding:0;font-size:3.15534cqw;line-height:1;font-weight:500}
 #mobile-page .m-hero-actions>.m-text-link{font-size:4.126214cqw;font-weight:500;line-height:1;gap:1.213592cqw;min-height:0;text-transform:uppercase}
 #mobile-page .m-hero-actions .m-control-icon{width:3.15534cqw;height:3.15534cqw}
 #mobile-page .m-trial-callout{position:absolute;left:5.674847cqw;right:6.796117cqw;top:38.349515cqw;height:18.932039cqw;margin:0;gap:0}
 #mobile-page .m-trial-callout p{font-size:4.61165cqw;line-height:1.2;font-weight:700}
 #mobile-page .m-trial-callout strong{font-size:6.796117cqw;font-weight:700}
 #mobile-page .m-trial-callout img{width:18.932039cqw;height:18.932039cqw;flex:none}
}

/* The seasonal badges have a 1355:1160 canvas; match their visible height
   without distorting or clipping the wider ribbon artwork. */
.accreditation-badges .review-badge:has(img[alt="Clutch Global Spring 2025"]),
.accreditation-badges .review-badge:has(img[alt="Clutch Global Fall 2025"]){width:180px;aspect-ratio:1355 / 1160}
/* Mobile: three awards above two rating panels; desktop rules stay intact. */
@media(max-width:1023px){
 #mobile-page .m-partners.accreditation-badges{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 8px;width:min(100%,360px);margin:16px auto 0;container-type:inline-size;align-items:center}
 #mobile-page .accreditation-badges .review-badge,
 #mobile-page .accreditation-badges .review-badge:has(img[alt="Clutch Global Spring 2025"]),
 #mobile-page .accreditation-badges .review-badge:has(img[alt="Clutch Global Fall 2025"]){grid-column:span 2;width:100%;height:calc((100cqw - 16px) / 3 * 1160 / 1355);aspect-ratio:auto;max-width:none}
 #mobile-page .accreditation-badges .review-badge img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:contain}
 #mobile-page .accreditation-badges .rating-widget{grid-column:span 3;justify-self:center;width:100%;max-width:154px;height:auto;aspect-ratio:1}
}
/* Keep the cross-origin iframe at its native viewport size in WebKit.
   Compensate with a transform so the surrounding desktop geometry is unchanged. */
#desktop-page .rating-widget--clutch>.clutch-widget{zoom:calc(1 / var(--desktop-scale));transform:translate(calc(var(--widget-left,0px) * var(--desktop-scale)),calc(var(--widget-top,0px) * var(--desktop-scale))) scale(calc(var(--widget-scale,1) * var(--desktop-scale)))}

/* One square frame; exclude the provider frame from the live rating crop. */
.rating-widget--clutch{border:1px solid #bcbcbc;background:#fff}
.rating-widget--clutch>.clutch-widget{width:114px!important;height:63px!important;overflow:hidden}
.rating-widget--clutch>.clutch-widget iframe{width:120px!important;transform:translate(-3px,-4px)}
.rating-widget--clutch>.rating-widget-footer{top:auto;bottom:0;width:120px;height:21px;overflow:hidden;background:#17313b;transform:scale(var(--widget-scale,1));transform-origin:bottom left}
.rating-widget-footer .clutch-widget{width:120px!important;height:112px!important;transform:translateY(-71px)}
#desktop-page .rating-widget--clutch>.rating-widget-footer{zoom:calc(1 / var(--desktop-scale));transform:scale(calc(var(--widget-scale,1) * var(--desktop-scale)))}
/* Mask embedded frame-edge paint in WebKit without covering the live text. */
.rating-widget--clutch>.clutch-widget::after{content:"";position:absolute;inset:0;border:6px solid #fff;pointer-events:none;box-sizing:border-box}
.rating-widget--clutch::after{content:"";position:absolute;left:var(--widget-left);top:var(--widget-top);width:calc(114px * var(--widget-scale));height:calc(63px * var(--widget-scale));border:calc(6px * var(--widget-scale)) solid #fff;box-sizing:border-box;pointer-events:none;z-index:2}
.rating-widget--clutch::after{left:0;width:100%;border-left-width:calc(8px * var(--widget-scale));border-right-width:calc(8px * var(--widget-scale));border-bottom:0}
