/* Covra — components and sections. Load after tokens.css.
   Section order on the demo home: header · hero · logos · stats (dark) · why (paper) · services · reviews (paper)
   · benefit · process (paper) · posts · faq · photo CTA · footer (paper). */

/* ===== Base ===== */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; overflow-x: clip; scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--font); font-weight: var(--w-medium); font-size: 18px; line-height: 1.6; letter-spacing: -.2px; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
h1, h2, h3, h4, p, ul, ol, figure, blockquote { margin: 0; }
ul, ol { padding: 0; list-style: none; }
h1, h2, h3 { font-family: var(--font-display); font-weight: var(--w-light); text-wrap: balance; }
p { text-wrap: pretty; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 6px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.sr-only:focus { position: fixed; top: 12px; left: 12px; width: auto; height: auto; clip: auto; z-index: 100; background: var(--text); color: var(--bg); padding: 8px 14px; border-radius: var(--r-pill); }
.wrap { width: min(var(--container), 100% - 2 * var(--gutter)); margin-inline: auto; }
main > section { position: relative; }

/* ===== Icons: single-colour SVGs painted with currentColor through a mask ===== */
.ic { display: inline-block; width: 24px; height: 24px; flex: none; background: currentColor; -webkit-mask: var(--i) center / contain no-repeat; mask: var(--i) center / contain no-repeat; }
.ic--users  { --i: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='users-event %281%29 1'%3E %3Cpath id='Vector' fill-rule='evenodd' clip-rule='evenodd' d='M9.33333 12C6.76 12 4.66667 9.90667 4.66667 7.33333C4.66667 4.76 6.76 2.66667 9.33333 2.66667C11.9067 2.66667 14 4.76 14 7.33333C14 9.90667 11.9067 12 9.33333 12ZM9.33333 4.66667C8.97821 4.65864 8.62507 4.72163 8.29463 4.85196C7.9642 4.98229 7.66313 5.17732 7.4091 5.4256C7.15508 5.67389 6.95322 5.97042 6.81537 6.29779C6.67752 6.62516 6.60647 6.97678 6.60638 7.33199C6.60629 7.68719 6.67717 8.03884 6.81485 8.36628C6.95253 8.69372 7.15425 8.99036 7.40815 9.23877C7.66205 9.48718 7.96302 9.68236 8.29339 9.81285C8.62376 9.94335 8.97688 10.0065 9.332 9.99867C10.0287 9.98326 10.6918 9.6957 11.1792 9.19755C11.6665 8.6994 11.9395 8.03024 11.9397 7.33332C11.9399 6.6364 11.6672 5.96711 11.1801 5.46871C10.693 4.97031 10.0301 4.68242 9.33333 4.66667ZM18 7.33333C18 9.90667 20.0933 12 22.6667 12C25.24 12 27.3333 9.90667 27.3333 7.33333C27.3333 4.76 25.24 2.66667 22.6667 2.66667C20.0933 2.66667 18 4.76 18 7.33333ZM20 7.33333C19.992 6.97821 20.055 6.62507 20.1853 6.29463C20.3156 5.9642 20.5107 5.66313 20.7589 5.4091C21.0072 5.15508 21.3038 4.95322 21.6311 4.81537C21.9585 4.67752 22.3101 4.60647 22.6653 4.60638C23.0205 4.60629 23.3722 4.67717 23.6996 4.81485C24.0271 4.95253 24.3237 5.15425 24.5721 5.40815C24.8205 5.66205 25.0157 5.96302 25.1462 6.29339C25.2767 6.62377 25.3399 6.97688 25.332 7.332C25.3166 8.02875 25.029 8.69178 24.5309 9.17916C24.0327 9.66654 23.3636 9.93954 22.6666 9.93971C21.9697 9.93989 21.3004 9.66722 20.802 9.18009C20.3036 8.69296 20.0158 8.03007 20 7.33333ZM11.3333 16.6667C11.3333 19.24 13.4267 21.3333 16 21.3333C18.5733 21.3333 20.6667 19.24 20.6667 16.6667C20.6667 14.0933 18.5733 12 16 12C13.4267 12 11.3333 14.0933 11.3333 16.6667ZM13.3333 16.6667C13.3253 16.3115 13.3883 15.9584 13.5186 15.628C13.649 15.2975 13.844 14.9965 14.0923 14.7424C14.3406 14.4884 14.6371 14.2865 14.9645 14.1487C15.2918 14.0109 15.6434 13.9398 15.9987 13.9397C16.3539 13.9396 16.7055 14.0105 17.0329 14.1482C17.3604 14.2859 17.657 14.4876 17.9054 14.7415C18.1538 14.9954 18.349 15.2964 18.4795 15.6267C18.61 15.9571 18.6732 16.3102 18.6653 16.6653C18.6499 17.3621 18.3624 18.0251 17.8642 18.5125C17.3661 18.9999 16.6969 19.2729 16 19.273C15.3031 19.2732 14.6338 19.0006 14.1354 18.5134C13.637 18.0263 13.3491 17.3634 13.3333 16.6667ZM21.2267 26.5667L22.04 29.5933V29.5867L23.9733 29.0667L23.16 26.0467C22.9516 25.2669 22.4917 24.5776 21.8517 24.0858C21.2116 23.594 20.4272 23.3272 19.62 23.3267H12.38C10.7267 23.3267 9.26667 24.4467 8.84 26.0467L8.02667 29.0733L9.96 29.5933L10.7733 26.5667C10.9667 25.84 11.6267 25.3333 12.38 25.3333H19.62C20.3733 25.3333 21.0333 25.84 21.2267 26.5667ZM27.2333 17.2333L28.22 20.9267L30.1533 20.4067L29.1667 16.72C28.9583 15.9402 28.4984 15.2509 27.8583 14.7592C27.2183 14.2674 26.4338 14.0005 25.6267 14H22.6733V16H25.6267C26.38 16 27.04 16.5067 27.2333 17.2333ZM1.84667 20.4067L3.78 20.9267V20.92L4.76667 17.2267C4.96 16.5 5.62 15.9933 6.37333 15.9933H9.32667V13.9933H6.37333C4.72 13.9933 3.26 15.1133 2.83333 16.7133L1.84667 20.4067Z' fill='%23E9FA49'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--face   { --i: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='face-happy 1'%3E %3Cpath id='Vector' fill-rule='evenodd' clip-rule='evenodd' d='M2.66667 16C2.66667 23.3533 8.64667 29.3333 16 29.3333C23.3533 29.3333 29.3333 23.3533 29.3333 16C29.3333 8.64667 23.3533 2.66667 16 2.66667C8.64667 2.66667 2.66667 8.64667 2.66667 16ZM4.66667 16C4.66667 9.75333 9.75333 4.66667 16 4.66667C22.2467 4.66667 27.3333 9.75333 27.3333 16C27.3333 22.2467 22.2467 27.3333 16 27.3333C9.75333 27.3333 4.66667 22.2467 4.66667 16ZM22.6667 12.6667C22.6667 13.1971 22.456 13.7058 22.0809 14.0809C21.7058 14.456 21.1971 14.6667 20.6667 14.6667C20.1362 14.6667 19.6275 14.456 19.2525 14.0809C18.8774 13.7058 18.6667 13.1971 18.6667 12.6667C18.6667 12.1362 18.8774 11.6275 19.2525 11.2525C19.6275 10.8774 20.1362 10.6667 20.6667 10.6667C21.1971 10.6667 21.7058 10.8774 22.0809 11.2525C22.456 11.6275 22.6667 12.1362 22.6667 12.6667ZM11.3333 14.6667C11.8638 14.6667 12.3725 14.456 12.7475 14.0809C13.1226 13.7058 13.3333 13.1971 13.3333 12.6667C13.3333 12.1362 13.1226 11.6275 12.7475 11.2525C12.3725 10.8774 11.8638 10.6667 11.3333 10.6667C10.8029 10.6667 10.2942 10.8774 9.91912 11.2525C9.54405 11.6275 9.33333 12.1362 9.33333 12.6667C9.33333 13.1971 9.54405 13.7058 9.91912 14.0809C10.2942 14.456 10.8029 14.6667 11.3333 14.6667ZM10.6867 18.4067C10.7939 19.7443 11.3995 20.9928 12.3835 21.9052C13.3674 22.8176 14.6581 23.3273 16 23.3333H16.0067C18.7733 23.3333 21.1067 21.1667 21.32 18.4067L21.4 17.3333H10.6067L10.6867 18.4067ZM16 21.3333C15.3521 21.3313 14.7187 21.1413 14.1767 20.7862C13.6347 20.4312 13.2074 19.9265 12.9467 19.3333H19.0533C18.7926 19.9265 18.3653 20.4312 17.8233 20.7862C17.2813 21.1413 16.6479 21.3313 16 21.3333Z' fill='%23E9FA49'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--star   { --i: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='star %283%29 1'%3E %3Cpath id='Vector' d='M8.65333 28.7867C8.30667 28.7867 7.96667 28.68 7.67333 28.4667C7.15333 28.0933 6.9 27.4667 7.00667 26.8333L8.26 19.5133L2.94667 14.3333C2.72234 14.1178 2.5638 13.8429 2.48945 13.5408C2.41511 13.2387 2.42801 12.9217 2.52667 12.6267C2.72667 12.02 3.24 11.5867 3.87333 11.4933L11.22 10.4267L14.5067 3.77333C14.7867 3.2 15.36 2.84667 16 2.84667C16.64 2.84667 17.2133 3.2 17.4933 3.77333L20.78 10.4267L28.1267 11.4933C28.4349 11.5366 28.7249 11.6655 28.9635 11.8654C29.2021 12.0653 29.3798 12.3282 29.4763 12.6241C29.5729 12.9201 29.5845 13.2372 29.5097 13.5393C29.4349 13.8415 29.2768 14.1166 29.0533 14.3333L23.74 19.5133L24.9933 26.8267C25.0468 27.1336 25.0132 27.4495 24.8962 27.7383C24.7793 28.0271 24.5837 28.2774 24.3317 28.4607C24.0797 28.6439 23.7813 28.7529 23.4705 28.7752C23.1597 28.7974 22.8489 28.7321 22.5733 28.5867L16 25.1333L9.42667 28.5867C9.18573 28.7122 8.91834 28.7785 8.64667 28.78L8.65333 28.7867ZM16 22.88L22.9067 26.5067L21.5867 18.82L27.1733 13.3733L19.4533 12.2533L16 5.26L12.5467 12.2533L4.82667 13.3733L10.4133 18.82L9.09333 26.5067L16 22.88Z' fill='%23E9FA49'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--badge  { --i: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='badge 1'%3E %3Cpath id='Vector' fill-rule='evenodd' clip-rule='evenodd' d='M16 4.66667C14.0551 4.66667 12.1898 5.43928 10.8145 6.81455C9.43928 8.18982 8.66667 10.0551 8.66667 12C8.66667 13.9449 9.43928 15.8102 10.8145 17.1855C12.1898 18.5607 14.0551 19.3333 16 19.3333C17.9449 19.3333 19.8102 18.5607 21.1854 17.1855C22.5607 15.8102 23.3333 13.9449 23.3333 12C23.3333 10.0551 22.5607 8.18982 21.1854 6.81455C19.8102 5.43928 17.9449 4.66667 16 4.66667ZM6.66667 12C6.66669 10.4307 7.0624 8.88674 7.81722 7.51089C8.57204 6.13505 9.66158 4.97174 10.9851 4.12854C12.3086 3.28534 13.8234 2.78947 15.3893 2.6868C16.9553 2.58412 18.5218 2.87795 19.9441 3.54111C21.3664 4.20427 22.5985 5.21535 23.5265 6.48085C24.4545 7.74636 25.0485 9.22543 25.2534 10.7813C25.4583 12.3371 25.2677 13.9196 24.699 15.3822C24.1303 16.8449 23.2021 18.1405 22 19.1493V27.7533C22 29.0693 20.528 29.8933 19.4093 29.136L16 26.868L12.588 29.1387C11.488 29.872 10 29.0907 10 27.7533V19.1493C8.95509 18.2742 8.115 17.1803 7.53904 15.945C6.96308 14.7097 6.66528 13.363 6.66667 12ZM12 20.4347V27.128L16 24.4653L20 27.128V20.4347C18.7501 21.0281 17.3836 21.3351 16 21.3333C14.6164 21.3351 13.2499 21.0281 12 20.4347Z' fill='%23E9FA49'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--pen    { --i: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='6a6ba74765fcdd1ce157e197_Choose Us Icon1 1'%3E %3Cpath id='Vector' d='M3.29648 20.602L9.66048 14.238M17.6745 11.408L15.7695 17.123C15.7391 17.2146 15.687 17.2975 15.6178 17.3647C15.5485 17.4319 15.464 17.4814 15.3715 17.509L3.69348 20.98C3.58827 21.0112 3.4765 21.013 3.37035 20.9852C3.26419 20.9573 3.16771 20.9009 3.0914 20.822C3.0151 20.7431 2.96189 20.6448 2.93757 20.5378C2.91325 20.4307 2.91875 20.3191 2.95348 20.215L6.7455 8.841C6.77268 8.75934 6.81708 8.68446 6.87576 8.62146C6.93444 8.55852 7.00596 8.5089 7.08546 8.47596L12.4725 6.258C12.582 6.21276 12.7025 6.20094 12.8186 6.2241C12.9349 6.24726 13.0417 6.30426 13.1255 6.38796L17.5295 10.794C17.6083 10.8728 17.6636 10.972 17.6892 11.0804C17.7148 11.1889 17.7097 11.3023 17.6745 11.408Z' stroke='%23292B22' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3Cpath id='Vector_2' d='M17.7919 11.056L20.62 8.22696C20.9949 7.85196 21.2055 7.34334 21.2055 6.813C21.2055 6.28266 20.9949 5.77405 20.62 5.39899L18.4999 3.27699C18.3142 3.09119 18.0937 2.9438 17.851 2.84324C17.6083 2.74268 17.3482 2.69092 17.0854 2.69092C16.8227 2.69092 16.5626 2.74268 16.3199 2.84324C16.0772 2.9438 15.8567 3.09119 15.6709 3.27699L12.8429 6.10596M11.7809 12.116C11.6416 11.9767 11.4762 11.8663 11.2942 11.7909C11.1122 11.7155 10.9171 11.6768 10.7201 11.6768C10.5231 11.6769 10.328 11.7158 10.1461 11.7912C9.96408 11.8666 9.79872 11.9771 9.65946 12.1165C9.5202 12.2558 9.40974 12.4212 9.33438 12.6032C9.25902 12.7853 9.22026 12.9803 9.22032 13.1773C9.22038 13.3744 9.2592 13.5694 9.33462 13.7514C9.41004 13.9334 9.52062 14.0987 9.65994 14.238C9.94134 14.5192 10.3229 14.6772 10.7208 14.6771C11.1187 14.677 11.5002 14.5189 11.7814 14.2375C12.0627 13.9561 12.2207 13.5745 12.2206 13.1767C12.2205 12.7788 12.0623 12.3973 11.7809 12.116Z' stroke='%23292B22' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--nodes  { --i: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='6a6ba7472fcaf283b0206b23_Choose Us Icon2 1'%3E %3Cpath id='Vector' d='M7.9992 4.99995C7.9992 5.7956 7.68312 6.55866 7.12056 7.12128C6.55794 7.6839 5.79487 7.99998 4.99922 7.99998C4.20357 7.99998 3.44051 7.6839 2.8779 7.12128C2.31529 6.55866 1.99922 5.7956 1.99922 4.99995C1.99922 4.2043 2.31529 3.44124 2.8779 2.87863C3.44051 2.31602 4.20357 1.99995 4.99922 1.99995C5.79487 1.99995 6.55794 2.31602 7.12056 2.87863C7.68312 3.44124 7.9992 4.2043 7.9992 4.99995ZM21.9992 4.99995C21.9992 5.7956 21.6832 6.55866 21.1205 7.12128C20.5579 7.6839 19.7948 7.99998 18.9992 7.99998C18.2036 7.99998 17.4405 7.6839 16.8779 7.12128C16.3153 6.55866 15.9992 5.7956 15.9992 4.99995C15.9992 4.2043 16.3153 3.44124 16.8779 2.87863C17.4405 2.31602 18.2036 1.99995 18.9992 1.99995C19.7948 1.99995 20.5579 2.31602 21.1205 2.87863C21.6832 3.44124 21.9992 4.2043 21.9992 4.99995ZM7.9992 19C7.9992 19.7956 7.68312 20.5586 7.12056 21.1213C6.55794 21.6839 5.79487 22 4.99922 22C4.20357 22 3.44051 21.6839 2.8779 21.1213C2.31529 20.5586 1.99922 19.7956 1.99922 19C1.99922 18.2043 2.31529 17.4412 2.8779 16.8787C3.44051 16.316 4.20357 16 4.99922 16C5.79487 16 6.55794 16.316 7.12056 16.8787C7.68312 17.4412 7.9992 18.2043 7.9992 19ZM21.9992 19C21.9992 19.7956 21.6832 20.5586 21.1205 21.1213C20.5579 21.6839 19.7948 22 18.9992 22C18.2036 22 17.4405 21.6839 16.8779 21.1213C16.3153 20.5586 15.9992 19.7956 15.9992 19C15.9992 18.2043 16.3153 17.4412 16.8779 16.8787C17.4405 16.316 18.2036 16 18.9992 16C19.7948 16 20.5579 16.316 21.1205 16.8787C21.6832 17.4412 21.9992 18.2043 21.9992 19Z' stroke='%23292B22' stroke-width='2'/%3E %3Cpath id='Vector_2' d='M7.9992 19H15.9992M7.9992 4.99995H15.9992M18.9992 16V7.99998M4.99922 16V7.99998' stroke='%23292B22' stroke-width='2' stroke-linecap='round'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--shield { --i: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='shield-plus 1'%3E %3Cpath id='Vector' d='M27.0506 3.6822L16.0013 0.0195312L4.95197 3.68353C3.58664 4.13686 2.66797 5.40753 2.66797 6.84753V15.8315C2.66797 24.6449 12.2133 30.1022 15.14 31.5649L15.9773 31.9822L16.8413 31.6342C19.772 30.4555 29.3346 25.8302 29.3346 15.8315V6.8462C29.3346 5.40753 28.4173 4.13553 27.0506 3.6822ZM28.0013 15.8302C28.0013 24.9942 19.0786 29.2955 16.344 30.3955L16.0346 30.5195L15.736 30.3702C12.984 28.9942 4.0013 23.8769 4.0013 15.8289V6.84753C4.0013 5.98353 4.55197 5.22086 5.37063 4.94886L16.0013 1.42353L26.632 4.94753C27.4506 5.21953 28.0013 5.9822 28.0013 6.8462V15.8302Z' fill='%23CE3700'/%3E %3Cpath id='Vector_2' d='M16.6667 9.33203H15.3333V14.6654H10V15.9987H15.3333V21.332H16.6667V15.9987H22V14.6654H16.6667V9.33203Z' fill='%23CE3700'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--heart  { --i: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='health-podcast 1' clip-path='url%28%23clip0_36534_8014%29'%3E %3Cpath id='Vector' d='M0.170667 16C0.0626667 15.444 0 14.888 0 14.3333C0 10.1067 3.44 6.66667 7.66667 6.66667C11.8933 6.66667 15.3333 10.1067 15.3333 14.3333H14C14 10.8413 11.1587 8 7.66667 8C4.17467 8 1.33333 10.8413 1.33333 14.3333C1.33333 14.8853 1.42267 15.4413 1.548 16H0.170667ZM9.676 17.2147L13.12 24.104L15.856 20H19.9987V18.6667H15.1413L13.284 21.452L9.84 14.5627L7.104 18.6667H0V20H7.82L9.676 17.2147ZM20.3507 25.156C17.6907 27.7373 14.968 29.7 14.0013 30.3707C12.7467 29.4987 8.54267 26.44 5.316 22.668H3.57067C7.48667 27.644 13.2667 31.4947 13.6333 31.7347L14 31.976C14.6973 31.4947 17.484 29.744 21.2787 26.1133C23.4747 23.984 25.132 21.9427 26.2547 20.0013H24.668C23.6213 21.6453 22.1893 23.3707 20.3507 25.156ZM24 0C19.588 0 16 3.588 16 8C16 11.2213 17.9173 13.996 20.6667 15.2627V13.7387C18.684 12.5827 17.3333 10.456 17.3333 8C17.3333 4.324 20.324 1.33333 24 1.33333C27.676 1.33333 30.6667 4.324 30.6667 8C30.6667 10.456 29.316 12.5827 27.3333 13.7387V15.2627C30.0827 13.996 32 11.22 32 8C32 3.588 28.412 0 24 0ZM26.6667 8C26.6667 9.47067 25.4707 10.6667 24 10.6667C22.5293 10.6667 21.3333 9.47067 21.3333 8C21.3333 6.52933 22.5293 5.33333 24 5.33333C25.4707 5.33333 26.6667 6.52933 26.6667 8ZM25.3333 8C25.3333 7.26533 24.736 6.66667 24 6.66667C23.264 6.66667 22.6667 7.26533 22.6667 8C22.6667 8.73467 23.264 9.33333 24 9.33333C24.736 9.33333 25.3333 8.73467 25.3333 8ZM23.3333 12V17.3333H24.6667V12H23.3333Z' fill='%23CE3700'/%3E %3C/g%3E %3Cdefs%3E %3CclipPath id='clip0_36534_8014'%3E %3Crect width='32' height='32' fill='white'/%3E %3C/clipPath%3E %3C/defs%3E %3C/svg%3E"); }
.ic--plane  { --i: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='plane-departure 1'%3E %3Cpath id='Vector' d='M1.13067 20.6582L3.89733 22.6262C5.19467 23.5489 6.72533 24.0195 8.264 24.0195C9.368 24.0195 10.4773 23.7769 11.508 23.2862L30.084 14.3835C31.7387 13.5929 32.4587 11.5969 31.688 9.93285C30.916 8.26485 28.9293 7.53952 27.2627 8.30752L27.2533 8.31285L21.9173 10.8889C21.904 10.8782 21.8907 10.8689 21.876 10.8595L12.2467 4.65552C11.268 3.92752 9.96933 3.79685 8.85733 4.30885L7.816 4.79819C7.20533 5.08485 6.784 5.65552 6.688 6.32352C6.592 6.99285 6.836 7.65819 7.33867 8.10352L14.4667 14.4835L7.72 17.7395L3.40267 16.1542C2.36533 15.7782 1.20133 16.1089 0.509333 16.9929C0.1 17.5169 -0.0706667 18.1782 0.028 18.8555C0.133333 19.5782 0.533333 20.2342 1.13067 20.6582ZM8.22533 7.10885C8.05467 6.95685 7.97467 6.74085 8.00667 6.51419C8.03867 6.28752 8.176 6.10219 8.38267 6.00619L9.42 5.51952C10.084 5.20885 10.864 5.28885 11.4867 5.75152L20.512 11.5675L15.764 13.8595L8.22533 7.10885ZM1.55867 17.8129C1.80133 17.5049 2.16133 17.3329 2.53067 17.3329C2.66933 17.3329 2.808 17.3582 2.94267 17.4075L7.52533 19.0902C7.69467 19.1529 7.88267 19.1422 8.04533 19.0635L27.828 9.51685C28.8253 9.05819 30.016 9.49285 30.48 10.4929C30.9453 11.4982 30.5093 12.7035 29.5093 13.1809L10.9333 22.0835C8.904 23.0502 6.504 22.8435 4.67067 21.5409L1.904 19.5729C1.60267 19.3595 1.40133 19.0275 1.348 18.6635C1.30267 18.3502 1.37733 18.0475 1.56133 17.8129H1.55867ZM32 31.3329C32 31.7009 31.7013 31.9995 31.3333 31.9995H0.666667C0.298667 31.9995 0 31.7009 0 31.3329C0 30.9649 0.298667 30.6662 0.666667 30.6662H31.3333C31.7013 30.6662 32 30.9649 32 31.3329Z' fill='%23CE3700'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--car    { --i: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='car-side-bolt 1'%3E %3Cg id='Vector'%3E %3Cpath d='M27.8933 13.6413L27.88 13.62L22.036 5.23597C20.9147 3.62797 19.0747 2.66797 17.1147 2.66797H10.668C8.19067 2.66797 5.936 4.22397 5.05733 6.5413L2.21733 14.0306C0.888 14.8533 0 16.3253 0 18.0013V21.3346C0 22.8053 1.196 24.0013 2.66667 24.0013V25.3346C2.66667 27.54 4.46133 29.3346 6.66667 29.3346C8.872 29.3346 10.6667 27.54 10.6667 25.3346V24.0013H21.3333V25.3346C21.3333 27.54 23.128 29.3346 25.3333 29.3346C27.5387 29.3346 29.3333 27.54 29.3333 25.3346V24.0013C30.804 24.0013 32 22.8053 32 21.3346V19.3346C32 16.688 30.2773 14.436 27.8933 13.6413ZM9.33333 25.3346C9.33333 26.8053 8.13733 28.0013 6.66667 28.0013C5.196 28.0013 4 26.8053 4 25.3346V24.0013H9.33333V25.3346ZM28 25.3346C28 26.8053 26.804 28.0013 25.3333 28.0013C23.8627 28.0013 22.6667 26.8053 22.6667 25.3346V24.0013H28V25.3346ZM30.6667 21.3346C30.6667 22.0693 30.068 22.668 29.3333 22.668H2.66667C1.932 22.668 1.33333 22.0693 1.33333 21.3346V18.0013C1.33333 16.164 2.82933 14.668 4.66667 14.668H7.33333C7.70133 14.668 8 14.3693 8 14.0013C8 13.6333 7.70133 13.3346 7.33333 13.3346H4.66667C4.4 13.3346 4.13733 13.3573 3.88267 13.4013L6.30267 7.01464C6.98667 5.21197 8.74 4.00264 10.6667 4.00264H17.1133C18.6387 4.00264 20.0693 4.7493 20.9413 6.0013L26.056 13.3373H22C21.632 13.3373 21.3333 13.6346 21.3333 14.0026C21.3333 14.3706 21.632 14.6693 22 14.6693H26C28.5733 14.6693 30.6667 16.7626 30.6667 19.336V21.3346Z' fill='%23CE3700'/%3E %3Cpath d='M18.3857 15.932C18.727 15.4174 18.7577 14.76 18.4657 14.216H18.4643C18.1723 13.672 17.6083 13.3347 16.991 13.3347H12.3577C12.2003 13.3347 12.1097 13.2454 12.0697 13.1907C12.0377 13.1467 11.9937 13.0667 11.999 12.9587L15.867 7.73203C16.087 7.43736 16.0243 7.0187 15.7283 6.80003C15.4323 6.5787 15.0163 6.6427 14.7963 6.9387C14.7963 6.9387 10.7617 12.4134 10.739 12.4867C10.5817 13.0054 10.6763 13.5507 10.999 13.9854C11.3217 14.42 11.8163 14.6694 12.3577 14.6694H16.991C17.175 14.6694 17.2617 14.7947 17.2897 14.848C17.319 14.9014 17.375 15.0427 17.2963 15.164L13.4657 20.2694C13.2457 20.564 13.3043 20.9814 13.599 21.2027C13.7203 21.292 13.8603 21.336 13.999 21.336C14.2003 21.336 14.4017 21.244 14.5323 21.0694L18.3857 15.932Z' fill='%23CE3700'/%3E %3C/g%3E %3C/g%3E %3C/svg%3E"); }
.ic--hash   { --i: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='Frame'%3E %3Cpath id='Vector' d='M14 5.62634H10.8125L11.3681 2.56822C11.3789 2.51901 11.3796 2.46815 11.3702 2.41866C11.3609 2.36917 11.3417 2.32208 11.3137 2.28018C11.2858 2.23828 11.2497 2.20244 11.2076 2.1748C11.1655 2.14716 11.1182 2.12829 11.0687 2.1193C11.0191 2.11031 10.9682 2.1114 10.9191 2.1225C10.87 2.13359 10.8236 2.15447 10.7827 2.18388C10.7418 2.2133 10.7073 2.25064 10.6812 2.2937C10.655 2.33675 10.6379 2.38462 10.6306 2.43447L10.0506 5.62634H6.8125L7.36812 2.56822C7.38207 2.47206 7.35815 2.37425 7.3014 2.29539C7.24466 2.21652 7.15952 2.16276 7.06392 2.14542C6.96832 2.12808 6.86973 2.14853 6.7889 2.20244C6.70808 2.25636 6.65133 2.33954 6.63062 2.43447L6.05062 5.62634H3C2.90054 5.62634 2.80516 5.66585 2.73483 5.73618C2.66451 5.8065 2.625 5.90189 2.625 6.00134C2.625 6.1008 2.66451 6.19618 2.73483 6.26651C2.80516 6.33683 2.90054 6.37634 3 6.37634H5.91437L5.32312 9.62634H2C1.90054 9.62634 1.80516 9.66585 1.73483 9.73618C1.66451 9.8065 1.625 9.90189 1.625 10.0013C1.625 10.1008 1.66451 10.1962 1.73483 10.2665C1.80516 10.3368 1.90054 10.3763 2 10.3763H5.1875L4.63125 13.4345C4.62223 13.483 4.62289 13.5329 4.63319 13.5812C4.64349 13.6295 4.66324 13.6753 4.69129 13.7159C4.71934 13.7566 4.75514 13.7913 4.79664 13.8181C4.83814 13.8449 4.88453 13.8632 4.93313 13.872C4.95523 13.8755 4.97762 13.877 5 13.8763C5.08771 13.8761 5.17257 13.8452 5.23983 13.7889C5.30709 13.7326 5.35248 13.6545 5.36812 13.5682L5.94938 10.3763H9.1875L8.63188 13.4345C8.62285 13.483 8.62351 13.5329 8.63381 13.5812C8.64412 13.6295 8.66386 13.6753 8.69191 13.7159C8.71996 13.7566 8.75576 13.7913 8.79727 13.8181C8.83877 13.8449 8.88515 13.8632 8.93375 13.872C8.956 13.8762 8.9786 13.8783 9.00125 13.8782C9.08896 13.878 9.17382 13.8471 9.24108 13.7908C9.30834 13.7345 9.35373 13.6564 9.36938 13.5701L9.94938 10.3763H13C13.0995 10.3763 13.1948 10.3368 13.2652 10.2665C13.3355 10.1962 13.375 10.1008 13.375 10.0013C13.375 9.90189 13.3355 9.8065 13.2652 9.73618C13.1948 9.66585 13.0995 9.62634 13 9.62634H10.0856L10.6769 6.37634H14C14.0995 6.37634 14.1948 6.33683 14.2652 6.26651C14.3355 6.19618 14.375 6.1008 14.375 6.00134C14.375 5.90189 14.3355 5.8065 14.2652 5.73618C14.1948 5.66585 14.0995 5.62634 14 5.62634ZM9.32312 9.62634H6.08563L6.67688 6.37634H9.91438L9.32312 9.62634Z' fill='%23171714'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--clock  { --i: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='Frame'%3E %3Cpath id='Vector' d='M8 1.625C6.73914 1.625 5.5066 1.99889 4.45824 2.69938C3.40988 3.39988 2.59278 4.39551 2.11027 5.56039C1.62776 6.72527 1.50151 8.00707 1.74749 9.2437C1.99347 10.4803 2.60063 11.6162 3.49219 12.5078C4.38375 13.3994 5.51967 14.0065 6.7563 14.2525C7.99293 14.4985 9.27473 14.3722 10.4396 13.8897C11.6045 13.4072 12.6001 12.5901 13.3006 11.5418C14.0011 10.4934 14.375 9.26086 14.375 8C14.373 6.30985 13.7007 4.6895 12.5056 3.49439C11.3105 2.29927 9.69015 1.62698 8 1.625ZM8 13.625C6.88748 13.625 5.79994 13.2951 4.87492 12.677C3.94989 12.0589 3.22892 11.1804 2.80318 10.1526C2.37743 9.12476 2.26604 7.99376 2.48308 6.90262C2.70012 5.81147 3.23585 4.80919 4.02252 4.02252C4.80919 3.23585 5.81147 2.70012 6.90262 2.48308C7.99376 2.26604 9.12476 2.37743 10.1526 2.80318C11.1804 3.22892 12.0589 3.94989 12.677 4.87492C13.2951 5.79994 13.625 6.88748 13.625 8C13.6233 9.49134 13.0302 10.9211 11.9756 11.9756C10.9211 13.0302 9.49134 13.6233 8 13.625ZM11.875 8C11.875 8.09946 11.8355 8.19484 11.7652 8.26517C11.6948 8.33549 11.5995 8.375 11.5 8.375H8C7.90054 8.375 7.80516 8.33549 7.73484 8.26517C7.66451 8.19484 7.625 8.09946 7.625 8V4.5C7.625 4.40054 7.66451 4.30516 7.73484 4.23484C7.80516 4.16451 7.90054 4.125 8 4.125C8.09946 4.125 8.19484 4.16451 8.26517 4.23484C8.33549 4.30516 8.375 4.40054 8.375 4.5V7.625H11.5C11.5995 7.625 11.6948 7.66451 11.7652 7.73484C11.8355 7.80516 11.875 7.90054 11.875 8Z' fill='%23171714'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--x      { --i: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='x 1'%3E %3Cpath id='Vector' d='M17.2237 2.8888L11.7797 8.96201L18 17.7715H12.9754L12.7902 17.5101L8.96621 12.0947L3.67298 18L2.77634 17.1113L8.22036 11.038L2 2.22853H7.02456L7.20983 2.48993L11.033 7.90452L16.3278 2L17.2237 2.8888ZM13.5954 16.4763H15.5507L6.40461 3.52377H4.44932L13.5954 16.4763Z' fill='%23171714'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--fb     { --i: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='facebook 1'%3E %3Cpath id='Vector' d='M16.8889 2C17.5026 2 18 2.49747 18 3.11111V16.8889C18 17.5026 17.5026 18 16.8889 18H3.11111C2.49746 18 2 17.5026 2 16.8889V3.11111C2 2.49746 2.49747 2 3.11111 2H16.8889ZM3.33333 16.6667H10.4444V11.3333H8.22222V10H10.4444V8.44444C10.4444 7.09442 11.5388 6 12.8889 6H14.8889V7.33333H12.8889C12.2752 7.33333 11.7778 7.83079 11.7778 8.44444V10H14V11.3333H11.7778V16.6667H16.6667V3.33333H3.33333V16.6667Z' fill='%23171714'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--ig     { --i: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='instagram 1'%3E %3Cpath id='Vector' d='M13.7183 2C16.0831 2 18 3.89036 18 6.22222V13.7778C18 16.1097 16.0831 18 13.7183 18H6.28169C3.91698 18 2 16.1097 2 13.7778V6.22222C2 3.89036 3.91698 2 6.28169 2H13.7183ZM6.28169 3.33333C4.66373 3.33333 3.35211 4.62673 3.35211 6.22222V13.7778C3.35211 15.3732 4.66373 16.6667 6.28169 16.6667H13.7183C15.3362 16.6667 16.6479 15.3732 16.6479 13.7778V6.22222C16.6479 4.62673 15.3362 3.33333 13.7183 3.33333H6.28169ZM9.88732 5.77778C12.2521 5.77778 14.169 7.66813 14.169 10C14.169 12.3319 12.2521 14.2222 9.88732 14.2222C7.52261 14.2222 5.60563 12.3319 5.60563 10C5.60563 7.66813 7.52261 5.77778 9.88732 5.77778ZM9.88732 7.11111C8.26939 7.11111 6.95775 8.40453 6.95775 10C6.95775 11.5955 8.26939 12.8889 9.88732 12.8889C11.5053 12.8889 12.8169 11.5955 12.8169 10C12.8169 8.40453 11.5053 7.11111 9.88732 7.11111ZM14.3944 4.66667C14.8922 4.66667 15.2958 5.06464 15.2958 5.55556C15.2958 6.04647 14.8922 6.44444 14.3944 6.44444C13.8965 6.44444 13.493 6.04647 13.493 5.55556C13.493 5.06464 13.8965 4.66667 14.3944 4.66667Z' fill='%23171714'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--yt     { --i: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='youtube %281%29 1'%3E %3Cpath id='Vector' d='M10 3C11.9651 3 13.5059 3.0287 14.6986 3.16862C15.8815 3.30741 16.8231 3.56506 17.5181 4.10104C18.2455 4.66191 18.6084 5.45102 18.7934 6.41888C18.9735 7.36093 19 8.55165 19 10C19 11.4484 18.9735 12.6391 18.7934 13.5811C18.6084 14.549 18.2455 15.3381 17.5181 15.8989C16.8231 16.435 15.8815 16.6926 14.6986 16.8313C13.5059 16.9713 11.9651 17 10 17C8.0348 17 6.49402 16.9713 5.30137 16.8313C4.11853 16.6926 3.17691 16.435 2.48183 15.8989C1.7545 15.3381 1.39163 14.549 1.20654 13.5811C1.02643 12.6391 1 11.4484 1 10C1 8.55165 1.02643 7.36093 1.20654 6.41888C1.39163 5.45102 1.7545 4.66191 2.48183 4.10104C3.17691 3.56506 4.11853 3.30741 5.30137 3.16862C6.49402 3.0287 8.0348 3 10 3ZM10 4.4C8.02786 4.4 6.55907 4.42966 5.45254 4.55951C4.33635 4.69051 3.68868 4.91415 3.28692 5.22396C2.91744 5.50888 2.67557 5.93043 2.53018 6.69049C2.37986 7.47653 2.35 8.53187 2.35 10C2.35 11.4681 2.37986 12.5235 2.53018 13.3095C2.67557 14.0695 2.91744 14.4911 3.28692 14.7761C3.68868 15.0858 4.33635 15.3095 5.45254 15.4405C6.55907 15.5703 8.02786 15.6 10 15.6C11.9722 15.6 13.441 15.5703 14.5474 15.4405C15.6636 15.3095 16.3113 15.0858 16.7131 14.7761C17.0825 14.4911 17.3245 14.0695 17.4698 13.3095C17.6201 12.5235 17.65 11.4681 17.65 10C17.65 8.53187 17.6201 7.47653 17.4698 6.69049C17.3245 5.93043 17.0825 5.50888 16.7131 5.22396C16.3113 4.91415 15.6636 4.69051 14.5474 4.55951C13.441 4.42966 11.9722 4.4 10 4.4ZM14.2855 10L7.525 14.0059V5.99414L14.2855 10ZM8.875 11.5932L11.5636 10L8.875 8.40587V11.5932Z' fill='%23171714'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--chev   { --i: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='Frame'%3E %3Cpath id='Vector' d='M12.0027 16.0388C11.6827 16.0388 11.3627 15.9187 11.1177 15.6737L5.22266 9.77875L6.28266 8.71875L12.0027 14.4387L17.7227 8.71875L18.7827 9.77875L12.8877 15.6737C12.7715 15.79 12.6335 15.8821 12.4816 15.9447C12.3297 16.0074 12.167 16.0393 12.0027 16.0388Z' fill='%23171714'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--check  { --i: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='check-circle %2812%29 1'%3E %3Cpath id='Vector' fill-rule='evenodd' clip-rule='evenodd' d='M1.33333 8C1.33333 11.6767 4.32333 14.6667 8 14.6667C11.6767 14.6667 14.6667 11.6767 14.6667 8C14.6667 4.32333 11.6767 1.33333 8 1.33333C4.32333 1.33333 1.33333 4.32333 1.33333 8ZM2.33333 8C2.33333 4.87667 4.87667 2.33333 8 2.33333C11.1233 2.33333 13.6667 4.87667 13.6667 8C13.6667 11.1233 11.1233 13.6667 8 13.6667C4.87667 13.6667 2.33333 11.1233 2.33333 8ZM6.41 10.1167C6.57333 10.28 6.78667 10.36 7 10.36C7.21333 10.36 7.42667 10.28 7.59 10.1167L11.52 6.18667L10.8133 5.48L7 9.29333L5.52 7.81333L4.81333 8.52L6.41 10.1167Z' fill='white'/%3E %3C/g%3E %3C/svg%3E"); }
.ic--rate   { --i: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cg id='start'%3E %3Cpath id='Vector' d='M9.79743 4.24814C10.1215 3.25062 11.5328 3.25062 11.8569 4.24814L13.0149 7.81223C13.1598 8.25834 13.5756 8.56037 14.0446 8.56037H17.7921C18.841 8.56037 19.2771 9.90253 18.4286 10.519L15.3968 12.7218C15.0173 12.9975 14.8585 13.4862 15.0034 13.9322L16.1615 17.4964C16.4856 18.4939 15.3439 19.3234 14.4953 18.7069L11.4636 16.5042C11.0841 16.2285 10.5702 16.2285 10.1907 16.5042L7.15894 18.7069C6.3104 19.3234 5.16869 18.4939 5.49281 17.4964L6.65086 13.9322C6.7958 13.4862 6.63701 12.9975 6.25754 12.7218L3.22573 10.519C2.37719 9.90253 2.81328 8.56037 3.86214 8.56037H7.60966C8.07871 8.56037 8.49443 8.25834 8.63937 7.81223L9.79743 4.24814Z' fill='%23CE3700'/%3E %3C/g%3E %3C/svg%3E"); }

/* ===== Eyebrow: a 12px plus mark + uppercase label ===== */
.eyebrow { display: inline-flex; align-items: center; gap: 9px; font-family: var(--font-label); font-weight: 500; font-size: 14px; line-height: 1.7; letter-spacing: .6px; text-transform: uppercase; color: var(--text); }
.eyebrow::before { content: ""; width: 12px; height: 12px; flex: none; background: linear-gradient(var(--accent), var(--accent)) center / 2px 10px no-repeat, linear-gradient(var(--accent), var(--accent)) center / 10px 2px no-repeat; border-radius: 1px; }
.on-dark .eyebrow, .eyebrow--light { color: var(--on-dark); }
.on-dark .eyebrow::before, .eyebrow--light::before { background: linear-gradient(var(--lime), var(--lime)) center / 2px 10px no-repeat, linear-gradient(var(--lime), var(--lime)) center / 10px 2px no-repeat; }

/* ===== Section heads ===== */
.head { display: flex; flex-direction: column; gap: var(--head-gap); align-items: flex-start; }
.head--center { align-items: center; text-align: center; margin-inline: auto; }
.head h2 { font-size: 64px; line-height: 1.14; letter-spacing: -2.4px; max-width: 575px; }
.head__row { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; }

/* ===== Buttons ===== */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 14px; min-height: 56px; padding: 8px 8px 8px 24px; border-radius: var(--r-pill); font-family: var(--font); font-weight: var(--w-bold); font-size: 18px; line-height: 1.6; letter-spacing: -.2px; white-space: nowrap; transition: background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease); }
.btn__go { width: 40px; height: 40px; border-radius: var(--r-round); display: grid; place-items: center; flex: none; transition: transform .35s var(--ease-out); }
.btn__go svg { width: 8px; height: 8px; transform: rotate(90deg); }
.btn:hover .btn__go { transform: rotate(45deg); }
.btn--ink { background: var(--text); color: var(--on-dark); }
.btn--ink .btn__go { background: var(--bg); color: var(--text); }
.btn--ink:hover { background: #2E2E29; }
.btn--accent { background: var(--accent); color: var(--on-accent); }
.btn--accent .btn__go { background: var(--bg); color: var(--text); }
.btn--accent:hover { background: color-mix(in srgb, var(--accent) 88%, black); }
.btn--lime { background: var(--lime); color: var(--on-lime); }
.btn--lime .btn__go { background: var(--text); color: var(--on-dark); }
.btn--lime:hover { background: color-mix(in srgb, var(--lime) 86%, white); }
.btn--line { border: 1px solid var(--line); color: var(--text); background: transparent; }
.btn--line .btn__go { background: var(--text); color: var(--on-dark); }
.btn--line:hover { border-color: var(--text); }
.btn--plain { padding: 14px 24px; border: 1px solid var(--line); color: var(--text); min-width: 160px; }
.btn--plain:hover { border-color: var(--text); }
.btn--sm { min-height: 48px; padding: 11px 24px; font-size: 16px; gap: 8px; }
.btn--sm svg { width: 16px; height: 16px; }

/* Round arrow buttons (carousels) */
.arrows { display: flex; gap: 8px; }
.arrow { width: 56px; height: 56px; border-radius: var(--r-round); display: grid; place-items: center; background: var(--surface-2); color: var(--dark); transition: background-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), opacity var(--dur-fast); }
.arrow svg { width: 20px; height: 20px; }
.arrow--prev svg { transform: scaleX(-1); }
.arrow--dark { background: var(--dark); color: var(--on-dark); }
.arrow--white { background: var(--surface); color: var(--text); }
.arrow:hover { background: var(--dark); color: var(--on-dark); }
.arrow[disabled] { opacity: .45; cursor: default; }
.arrow[disabled]:hover { background: var(--surface-2); color: var(--dark); }
.arrow--white[disabled]:hover { background: var(--surface); color: var(--text); }

/* ===== Header (fixed; the nav pill floats over the hero photo) ===== */
.site-head { position: fixed; inset: 0 0 auto; z-index: 50; padding-top: 20px; pointer-events: none; transition: padding var(--dur) var(--ease-out); }
.site-head .bar { pointer-events: auto; height: var(--nav-h); display: flex; align-items: center; justify-content: space-between; gap: 24px; border-radius: var(--r-pill); transition: background-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), padding var(--dur) var(--ease-out), height var(--dur) var(--ease-out); }
/* no padding change when scrolled (navcheck: the menu must not resize) */
.site-head.is-scrolled .bar { background: rgba(255, 255, 255, .92); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); box-shadow: var(--shadow-1); }
.logo { display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-display); font-weight: 400; font-size: 25px; line-height: 1.4; letter-spacing: -1px; color: var(--text); }
.logo__mark { width: 38px; height: 38px; flex: none; color: var(--accent); }
.nav { display: flex; align-items: center; gap: 12px; }
/* menu hover = soft fill pill inside the menu bar (house rule soft-hovers, lesson 71): 8px × 14px of room, current page the same */
.nav__links { display: flex; align-items: center; gap: 0; background: var(--surface); border-radius: var(--r-pill); padding: 4px; font-size: 16px; line-height: 1.5; letter-spacing: -.25px; }
.nav__links a { padding: 8px 14px; border-radius: var(--r-pill); transition: color var(--dur-fast), background-color .35s var(--ease-out); }
.nav__links a:hover, .nav__links a[aria-current="page"] { background: color-mix(in srgb, currentColor 7%, transparent); }
.nav__cta { background: var(--text); color: var(--on-dark); }
.nav__cta:hover { background: #2E2E29; }
.nav__toggle { display: none; width: 48px; height: 48px; border-radius: var(--r-round); background: var(--text); color: var(--on-dark); place-items: center; }
.nav__toggle svg { width: 20px; height: 20px; }
/* nav links keep their padding when scrolled */

/* Header variant: one white bar (Home 2, About). Same markup, add .site-head--bar to <header>. */
.site-head--bar .bar { height: 64px; padding: 8px 8px 8px 20px; background: var(--surface); border-radius: 10px; }
.site-head--bar .nav { gap: 28px; }
.site-head--bar .nav__links { background: none; padding: 0; gap: 4px; }
.site-head--bar.is-scrolled .bar { border-radius: 10px; }
@media (max-width: 900px) { .site-head--bar .bar, .site-head--bar.is-scrolled .bar { padding: 8px 8px 8px 14px; } }

/* Mobile menu sheet */
.menu { position: fixed; inset: 0; z-index: 60; background: var(--paper); padding: 20px var(--gutter) 32px; display: flex; flex-direction: column; gap: 32px; transform: translateY(-100%); visibility: hidden; transition: transform .5s var(--ease-out), visibility 0s .5s; }
.menu.is-open { transform: none; visibility: visible; transition: transform .5s var(--ease-out); }
.menu__top { display: flex; justify-content: space-between; align-items: center; }
.menu__links { display: flex; flex-direction: column; gap: 8px; }
.menu__links a { font-family: var(--font-display); font-weight: var(--w-light); font-size: 40px; line-height: 1.2; letter-spacing: -1.4px; }
.menu .btn { align-self: flex-start; }

/* ===== Hero (split: copy left, tall photo right) ===== */
.hero { padding-top: 20px; }
.hero__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; min-height: 880px; }
.hero__copy { display: flex; flex-direction: column; justify-content: space-between; padding: 132px 0 20px; }
.hero__top { display: flex; flex-direction: column; gap: 18px; }
.hero__kicker { font-size: 16px; line-height: 1.5; letter-spacing: -.25px; text-transform: uppercase; color: var(--text); }
.hero h1 { font-size: 72px; line-height: 1.06; letter-spacing: -1.5px; max-width: 571px; }
.hero__bottom { display: flex; flex-direction: column; gap: 24px; max-width: 500px; }
.hero__lead { font-size: 18px; color: var(--text); }
.hero__ctas { display: flex; flex-wrap: wrap; gap: 10px; }
.hero__media { position: relative; border-radius: var(--r); overflow: hidden; min-height: 560px; }
.hero__media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.proof-card { position: absolute; right: 0; bottom: 20px; width: 227px; background: var(--surface); border-radius: var(--r-lg) 0 0 var(--r-lg); padding: 22px; display: flex; flex-direction: column; gap: 32px; }
.proof-card__title { font-size: 20px; line-height: 1.6; color: var(--text); }
.proof-card__meta { display: flex; flex-direction: column; gap: 20px; }

/* Avatar stack + stars (hero card, reviews) */
.avatars { display: flex; }
.avatars img, .avatars span { width: 44px; height: 44px; border-radius: var(--r-round); border: 1px solid var(--surface); object-fit: cover; background: var(--surface); }
.avatars > * + * { margin-left: -12px; }
.avatars span { display: grid; place-items: center; background: var(--text); color: var(--on-dark); width: 40px; height: 40px; margin-top: 2px; }
.avatars span svg { width: 14px; height: 14px; }
.stars { display: flex; gap: 2px; color: var(--accent); }
.stars .ic { width: 16px; height: 16px; }
.rating { display: flex; flex-direction: column; gap: 6px; font-size: 16px; line-height: 1.5; letter-spacing: -.25px; color: var(--text-2); }

/* ===== Logo row ===== */
.logos { padding: 130px 0; display: flex; flex-direction: column; align-items: center; gap: 40px; }
.logos__label { font-size: 18px; color: var(--text-2); text-align: center; }
.logos__row { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 32px; color: var(--dark); }
.brandmark { display: inline-flex; align-items: center; gap: 7px; font-family: var(--font); font-weight: var(--w-bold); font-size: 20px; letter-spacing: -.6px; line-height: 1; white-space: nowrap; opacity: .9; }
.brandmark svg { width: 24px; height: 24px; }
.brandmark--serif { font-family: var(--font-display); font-weight: 400; letter-spacing: -.4px; font-size: 24px; }
.brandmark--wide { font-weight: var(--w-medium); letter-spacing: .5px; text-transform: lowercase; }
.brandmark--italic { font-style: italic; font-weight: var(--w-bold); letter-spacing: -.8px; }

/* ===== Dark band: trusted numbers ===== */
.band-dark { background: var(--dark); color: var(--on-dark); padding: 120px 0 124px; }
.band-dark .head h2 { color: var(--on-dark); }
.stats__head { display: grid; grid-template-columns: 1fr 409px; align-items: end; gap: 40px; }
.stats__lead { color: var(--on-dark-2); }
.stats { margin-top: 62px; display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--gap); }
.stat { min-height: 276px; padding: 24px; border-radius: var(--r-lg); background: var(--dark-card); border: 1px solid var(--dark-line); display: flex; flex-direction: column; justify-content: space-between; gap: 56px; transition: background-color var(--dur) var(--ease); }
.stat:hover { background: rgba(255, 255, 255, .12); }
.stat__icon { width: 60px; height: 60px; border-radius: var(--r-sm); background: var(--dark-card); display: grid; place-items: center; color: var(--lime); }
.stat__icon .ic { width: 32px; height: 32px; }
.stat__num { display: block; font-family: var(--font-display); font-weight: var(--w-light); font-size: 64px; line-height: 1.14; letter-spacing: -2.4px; }
.stat__label { display: block; margin-top: 10px; color: var(--on-dark-2); }

/* ===== Paper bands ===== */
.band-paper { background: var(--paper); padding: var(--section) 0; }
.band-white { padding: 140px 0; }

/* ===== Why us: big photo with an inset card + two cards ===== */
.why { margin-top: 60px; display: grid; grid-template-columns: 810fr 446fr; gap: 16px; }
.why__photo { position: relative; border-radius: var(--r-lg); overflow: hidden; min-height: 632px; display: flex; align-items: flex-end; padding: 6px; }
.why__photo > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.why__inset { position: relative; width: min(584px, 100%); background: var(--surface); border-radius: 20px; padding: 30px 30px 30px; display: flex; flex-direction: column; gap: 24px; }
.why__inset h3 { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; max-width: 454px; }
.why__inset p { color: var(--muted); max-width: 454px; }
.why__cards { display: grid; grid-template-rows: 1fr 1fr; gap: 16px; }
.why-card { background: var(--surface); border-radius: var(--r-lg); padding: 36px; display: flex; flex-direction: column; gap: 39px; }
.icon-well { width: 56px; height: 56px; border-radius: var(--r-pill); background: var(--surface-2); display: grid; place-items: center; color: var(--text); flex: none; }
.icon-well .ic { width: 24px; height: 24px; }
.why-card h3, .card-title { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; }
.why-card p { margin-top: 12px; color: var(--muted); max-width: 360px; }

/* ===== Carousel track (services, reviews): bleeds past the right edge ===== */
.track { display: flex; gap: var(--gap); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; --track-edge: calc((100vw - min(var(--container), 100vw - 2 * var(--gutter))) / 2); margin-inline: calc(-1 * var(--track-edge)); padding-inline: var(--track-edge); scroll-padding-inline: var(--track-edge); /* full-width scroll area, first card on the content edge (Farhan 2026-10-13: rails never clipped at the content edge) */ overscroll-behavior-x: contain; }
.track::-webkit-scrollbar { display: none; }
.track > * { scroll-snap-align: start; flex: none; }

/* ===== Services ===== */
.svc-track { margin-top: 54px; }
.svc { position: relative; width: 411px; min-height: 530px; border-radius: var(--r); background: var(--paper); overflow: hidden; padding: 8px; display: flex; flex-direction: column; justify-content: space-between; }
.svc > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; }
.svc__icon { position: relative; width: 60px; height: 60px; border-radius: var(--r-xs); background: var(--surface); border: 1px solid var(--line-2); display: grid; place-items: center; color: var(--accent); }
.svc__icon .ic { width: 32px; height: 32px; }
.svc__body { position: relative; background: var(--surface); border-radius: var(--r-sm); padding: 24px 24px 32px; display: flex; flex-direction: column; gap: 12px; }
.svc__body p { color: var(--muted); }
.svc__body .btn { margin-top: 12px; align-self: flex-start; }

/* ===== Reviews ===== */
.reviews-track { margin-top: 56px; }
.review { width: 533px; min-height: 420px; border-radius: var(--r-lg); background: var(--surface); padding: 32px; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; }
.review .stars .ic { width: 22px; height: 22px; }
.review__quote { margin-top: 20px; font-size: 20px; line-height: 1.6; color: var(--text); max-width: 446px; }
.review__who { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.review__name { display: block; font-weight: var(--w-bold); font-size: 20px; color: var(--text); }
.review__role { display: block; font-size: 18px; color: var(--muted); }
.review__avatar { width: 60px; height: 60px; border-radius: 45px; object-fit: cover; object-position: 50% 15%; }
.review__thumb { width: 100px; height: 100px; border-radius: var(--r); object-fit: cover; object-position: 50% 15%; }
.review--photo { justify-content: flex-start; gap: 24px; }
.review--photo .review__img { width: 100%; height: 284px; border-radius: var(--r); object-fit: cover; }
.review--photo .review__who { justify-content: flex-start; align-items: baseline; gap: 10px; }
.review--photo .review__name, .review--photo .review__role { display: inline; }
.reviews-nav { margin-top: 60px; display: flex; justify-content: center; }

/* ===== Benefit: tall photo + copy with a check list ===== */
.benefit { display: grid; grid-template-columns: 593fr 591fr; gap: 80px; }
.benefit__photo { position: relative; border-radius: var(--r-lg); overflow: hidden; min-height: 720px; }
.benefit__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.benefit__copy { display: flex; flex-direction: column; justify-content: space-between; gap: 64px; }
.benefit__copy .head h2 { max-width: none; }
.benefit__copy .head p { color: var(--muted); max-width: 449px; }
.checks { display: flex; flex-direction: column; gap: 36px; max-width: 484px; }
.check { display: grid; grid-template-columns: 28px 1fr; column-gap: 24px; row-gap: 8px; }
.check__mark { width: 28px; height: 28px; border-radius: var(--r-round); background: var(--dark); color: var(--on-dark); display: grid; place-items: center; margin-top: 7px; }
.check__mark svg { width: 12px; height: 9px; }
.check h3 { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; }
.check p { grid-column: 2; color: var(--muted); }

/* ===== Process steps ===== */
.steps { margin-top: 56px; display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gap); }
.step { background: var(--surface); border-radius: var(--r-lg); padding: 32px; min-height: 279px; display: flex; flex-direction: column; transition: transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out); }
.step:hover { transform: translateY(-4px); box-shadow: var(--shadow-1); }
.step__top { display: flex; justify-content: space-between; align-items: center; }
.step__pill { background: var(--accent); color: var(--on-accent); border-radius: var(--r-pill); padding: 4px 14px; font-weight: var(--w-bold); font-size: 16px; line-height: 1.6; letter-spacing: -.2px; }
.step__arrow { width: 20px; height: 20px; color: var(--muted); transition: transform .35s var(--ease-out), color .35s; }
.step:hover .step__arrow { transform: translateX(4px); color: var(--text); }
.step .step__title { color: var(--text); margin-top: 52px; font-family: var(--font); font-weight: var(--w-medium); font-size: 20px; line-height: 1.6; letter-spacing: -.2px; }
.step p { margin-top: 12px; color: var(--muted); }

/* ===== Posts ===== */
.posts { margin-top: 70px; display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap); }
.post { background: var(--paper); border-radius: var(--r); padding: 14px 14px 24px; display: flex; flex-direction: column; }
.post__media { position: relative; border-radius: var(--r-sm); overflow: hidden; aspect-ratio: 598 / 358; }
.post__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s var(--ease-out); }
.post:hover .post__media img { transform: scale(1.04); }
.post__tags { position: absolute; top: 16px; left: 16px; display: flex; gap: 8px; flex-wrap: wrap; }
.tag { display: inline-flex; align-items: center; gap: 4px; background: var(--surface); border-radius: 40px; padding: 6px 12px; font-size: 16px; line-height: 1.5; letter-spacing: -.25px; color: var(--text); }
.tag .ic { width: 16px; height: 16px; }
.post__body { padding: 24px 10px 0; display: flex; flex-direction: column; gap: 24px; align-items: flex-start; }
.post__body p { margin-top: 12px; color: var(--muted); max-width: 560px; }

/* ===== FAQ ===== */
.faq { width: min(648px, 100%); margin-inline: auto; }
.faq .head h2 { max-width: 490px; }
.faq__list { margin-top: 60px; display: flex; flex-direction: column; gap: 16px; }
.faq__item { background: var(--surface-2); border-radius: var(--r); }
.faq__q { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 24px; text-align: left; font-family: var(--font-display); font-weight: var(--w-light); font-size: 24px; line-height: 1.33; letter-spacing: -.4px; color: var(--text); }
.faq__q .ic { transition: transform .4s var(--ease-out), color .3s; }
.faq__q[aria-expanded="true"] .ic { transform: rotate(180deg); color: var(--accent); }
.faq__a { display: grid; grid-template-rows: 0fr; visibility: hidden; transition: grid-template-rows .45s var(--ease-out), visibility 0s .45s; }
.faq__a > div { overflow: hidden; min-height: 0; }
.faq__a p { padding: 0 24px 24px; color: var(--muted); max-width: 34em; }
.faq__q { transition: padding .45s var(--ease-out); }
.faq__q[aria-expanded="true"] { padding-bottom: 12px; }
.faq__q[aria-expanded="true"] + .faq__a { grid-template-rows: 1fr; visibility: visible; transition-delay: 0s; }

/* ===== Photo CTA ===== */
.cta-photo { position: relative; min-height: 656px; display: grid; place-items: center; overflow: hidden; color: var(--on-dark); margin-top: 140px; }
.cta-photo > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 35%; }
.cta-photo::after { content: ""; position: absolute; inset: 0; background: var(--scrim); }
.cta-photo__inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 46px; text-align: center; padding: 100px var(--gutter); }
.cta-photo .head { gap: 16px; }
.cta-photo h2 { font-size: 64px; line-height: 1.14; letter-spacing: -2.4px; color: var(--on-dark); max-width: 575px; }
.cta-photo .btn { margin-top: 8px; }
.cta-photo__ticks { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 38px; font-size: 16px; line-height: 1.5; letter-spacing: -.25px; }
.cta-photo__ticks li { display: flex; align-items: center; gap: 5px; }
.cta-photo__ticks .ic { width: 16px; height: 16px; }

/* ===== Forms (composed from tokens: quote forms, contact) ===== */
.field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.field__label { font-size: 16px; line-height: 1.5; letter-spacing: -.25px; color: var(--text-2); }
.input, .select { width: 100%; min-height: 56px; padding: 14px 18px; border-radius: var(--r-sm); border: 1px solid var(--line); background: var(--surface); font: inherit; font-size: 17px; color: var(--text); transition: border-color var(--dur-fast), box-shadow var(--dur-fast); }
.select { appearance: none; -webkit-appearance: none; padding-right: 48px; background-image: linear-gradient(45deg, transparent 50%, var(--text) 50%), linear-gradient(135deg, var(--text) 50%, transparent 50%); background-position: calc(100% - 24px) 50%, calc(100% - 18px) 50%; background-size: 6px 6px; background-repeat: no-repeat; }
.input::placeholder { color: var(--muted); }
.input:focus, .select:focus { outline: none; border-color: var(--text); box-shadow: 0 0 0 3px rgba(var(--accent-rgb), .15); }
.on-dark .input, .on-dark .select { background-color: var(--dark-card); border-color: var(--dark-line); color: var(--on-dark); }
.on-dark .select { background-image: linear-gradient(45deg, transparent 50%, var(--on-dark) 50%), linear-gradient(135deg, var(--on-dark) 50%, transparent 50%); }
.on-dark .input::placeholder { color: var(--on-dark-2); }
.on-dark .field__label { color: var(--on-dark-2); }
.on-dark .select option { color: var(--text); }

/* Segmented toggle (billing period) */
.seg { display: inline-flex; padding: 4px; border-radius: var(--r-pill); background: var(--surface-2); gap: 4px; }
.seg button { min-height: 44px; padding: 8px 20px; border-radius: var(--r-pill); font-size: 16px; color: var(--text-2); transition: background-color var(--dur-fast), color var(--dur-fast); }
.seg button[aria-pressed="true"] { background: var(--text); color: var(--on-dark); }

/* ===== Footer ===== */
.site-foot { background: var(--paper); padding: 60px 0 40px; font-size: 16px; line-height: 1.5; letter-spacing: -.25px; }
.foot__grid { display: grid; grid-template-columns: 486px 1fr; }
.foot__brand { display: flex; flex-direction: column; justify-content: space-between; gap: 60px; padding-right: 40px; border-right: 1px solid var(--rule); min-height: 460px; }
.foot__brand .logo { font-weight: var(--w-light); font-size: 40px; line-height: 1.2; letter-spacing: -1.2px; gap: 12px; }
.foot__brand .logo__mark { width: 50px; height: 50px; }
.foot__info { display: flex; flex-direction: column; gap: 30px; }
.foot__k { display: block; color: var(--muted); text-transform: uppercase; margin-bottom: 12px; }
.foot__main { padding-left: 130px; display: flex; flex-direction: column; justify-content: space-between; gap: 64px; }
.foot__cols { display: flex; justify-content: space-between; gap: 32px; }
.foot__cols a { display: block; margin-top: 8px; transition: color var(--dur-fast); }
.foot__cols a:hover, .foot__cols a[aria-current="page"] { color: var(--accent-ink); }
.foot__news h3 { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; }
.foot__news > p { margin-top: 8px; color: var(--muted); }
.foot__form { margin-top: 36px; display: flex; align-items: center; gap: 12px; border-bottom: 1px solid var(--rule); padding-bottom: 6px; }
.foot__form input { flex: 1; min-width: 0; border: 0; background: transparent; font: inherit; color: var(--text); padding: 0; height: 28px; }
.foot__form input::placeholder { color: var(--muted); }
.foot__form input:focus { outline: none; }
.foot__form:focus-within { border-color: var(--text); }
.foot__form button { width: 28px; height: 28px; border-radius: var(--r-round); background: var(--accent); color: var(--on-accent); display: grid; place-items: center; flex: none; }
.foot__form button svg { width: 14px; height: 14px; }
.foot__bottom { margin-top: 130px; padding-bottom: 20px; border-bottom: 1px solid var(--rule); display: flex; justify-content: space-between; align-items: center; gap: 16px; color: var(--muted); }
.socials { display: flex; gap: 16px; color: var(--muted); }
.socials a { display: grid; place-items: center; width: 24px; height: 24px; transition: color var(--dur-fast); }
.socials a:hover { color: var(--text); }
.socials .ic { width: 20px; height: 20px; }

/* ===== Responsive ===== */
@media (max-width: 1280px) {
  .foot__main { padding-left: 64px; }
  .foot__grid { grid-template-columns: 400px 1fr; }
}
@media (max-width: 1100px) {
  :root { --section: 104px; }
  .hero h1 { font-size: 60px; }
  .head h2, .cta-photo h2 { font-size: 54px; letter-spacing: -2px; }
  .stats { grid-template-columns: repeat(2, 1fr); }
  .stats__head { grid-template-columns: 1fr; align-items: start; }
  .stats__lead { max-width: 520px; }
  .why { grid-template-columns: 1fr; }
  .why__cards { grid-template-columns: 1fr 1fr; grid-template-rows: none; }
  .benefit { gap: 48px; }
  .steps { grid-template-columns: 1fr; }
  .foot__grid { grid-template-columns: 1fr; }
  .foot__brand { border-right: 0; border-bottom: 1px solid var(--rule); min-height: 0; padding: 0 0 40px; flex-direction: row; flex-wrap: wrap; align-items: flex-start; }
  .foot__main { padding: 48px 0 0; }
  .foot__bottom { margin-top: 64px; }
  .logos__row { flex-wrap: wrap; justify-content: center; gap: 28px 48px; }
}
@media (max-width: 900px) {
  .nav__links, .nav .nav__cta { display: none; }
  .nav__toggle { display: grid; }
  .site-head .bar { padding: 0; }
  .site-head.is-scrolled .bar { padding: 0 8px 0 14px; }
  .hero { padding-top: 88px; }
  .hero__grid { grid-template-columns: 1fr; min-height: 0; gap: 40px; }
  .hero__copy { padding: 32px 0 0; gap: 40px; }
  .hero__media { min-height: 0; aspect-ratio: 4 / 5; }
  .why__cards { grid-template-columns: 1fr; }
  .benefit { grid-template-columns: 1fr; }
  .benefit__photo { min-height: 0; aspect-ratio: 4 / 5; }
  .posts { grid-template-columns: 1fr; }
  .head__row { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 640px) {
  :root { --section: 80px; --gutter: 16px; }
  body { font-size: 17px; }
  .hero h1 { font-size: 44px; letter-spacing: -1.2px; }
  .head h2, .cta-photo h2 { font-size: 40px; letter-spacing: -1.4px; }
  .stat__num { font-size: 40px; letter-spacing: -1.4px; }
  .why-card h3, .card-title, .check h3, .why__inset h3, .foot__news h3 { font-size: 28px; letter-spacing: -1px; }
  .faq__q { font-size: 21px; padding: 20px; }
  .faq__a p { padding: 0 20px 20px; }
  .logos { padding: 80px 0; }
  .band-dark { padding: 80px 0; }
  .band-white { padding: 80px 0; }
  .stats { grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 40px; }
  .stat { min-height: 0; gap: 32px; padding: 18px; border-radius: var(--r); }
  .stat__icon { width: 48px; height: 48px; }
  .stat__icon .ic { width: 26px; height: 26px; }
  .stat__label { font-size: 15px; }
  .why { margin-top: 40px; }
  .why__photo { min-height: 520px; }
  .why__inset { padding: 24px; }
  .why-card { padding: 28px; gap: 28px; }
  .svc { width: 300px; min-height: 460px; }
  .review { width: 300px; min-height: 0; padding: 24px; }
  .review--photo .review__img { height: 200px; }
  .review__quote { font-size: 18px; }
  .svc-track, .reviews-track, .steps { margin-top: 40px; }
  .posts { margin-top: 40px; }
  .faq__list { margin-top: 40px; }
  .cta-photo { min-height: 600px; margin-top: 80px; }
  .cta-photo__inner { gap: 32px; }
  .proof-card { width: 200px; padding: 18px; gap: 20px; }
  .proof-card__title { font-size: 18px; }
  .foot__cols { flex-wrap: wrap; gap: 32px 24px; }
  .foot__cols > div { flex: 1 1 40%; }
  .foot__brand .logo { font-size: 32px; }
  .foot__bottom { flex-direction: column-reverse; align-items: flex-start; }
  .btn { font-size: 17px; }
}

/* ───────── Home2 ───────── */
/* Covra — Home 2 (body.page-home2). Loaded after covra.css. Prefix: h2- */

/* ===== Hero: full-bleed photo, dark fade, copy along the bottom ===== */
.h2-hero { position: relative; min-height: clamp(720px, 68.2vw, 982px); display: flex; align-items: flex-end; overflow: hidden; color: var(--on-dark); }
.h2-hero__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.h2-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(23, 23, 20, .12) 50%, rgba(23, 23, 20, .9) 81.8%); pointer-events: none; }
.h2-hero__inner { position: relative; z-index: 1; display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; padding-bottom: 110px; }
.h2-hero__copy { display: flex; flex-direction: column; gap: 18px; }
.h2-hero__kicker { font-size: 18px; line-height: 1.6; letter-spacing: -.2px; text-transform: uppercase; }
.h2-hero h1 { font-size: 72px; line-height: 1.06; letter-spacing: -1.5px; max-width: 643px; text-wrap: balance; }
.h2-hl { color: var(--lime); }
.h2-hero__side { width: 343px; flex: none; display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.h2-hero__lead { margin-bottom: 6px; }

/* Glass review pill */
.h2-proof { width: 100%; display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 48px; background: rgba(255, 255, 255, .14); -webkit-backdrop-filter: blur(32px); backdrop-filter: blur(32px); }
.h2-proof .avatars > * + * { margin-left: -16px; }
.h2-proof__info { display: flex; flex-direction: column; gap: 6px; font-size: 18px; line-height: 1.55; letter-spacing: -.4px; }
.h2-proof .stars { color: var(--on-dark); }
.h2-proof .stars .ic { width: 14px; height: 14px; }

/* White pill button (dark arrow circle) */
.h2-btn-white { background: var(--surface); color: var(--text); }
.h2-btn-white .btn__go { background: var(--text); color: var(--on-dark); }
.h2-btn-white:hover { background: var(--surface-2); }

/* ===== About: eyebrow | copy, then stat cards | photo ===== */
.h2-about { padding: 140px 0; }
.h2-about__grid { display: grid; grid-template-columns: 476fr 780fr; column-gap: 16px; row-gap: 80px; }
.h2-about__grid > .eyebrow { align-self: start; margin-top: 12px; }
.h2-about__copy { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.h2-about__title { font-size: 48px; line-height: 1.3; letter-spacing: -1.4px; text-wrap: pretty; }
.h2-about__copy p { max-width: 640px; color: var(--text-2); margin-bottom: 8px; }
.h2-about__stats { display: grid; grid-template-rows: 1fr 1fr; gap: 16px; }
.h2-about-stat { background: var(--surface); border-radius: var(--r); padding: 24px; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; min-height: 240px; }
.h2-about-stat__num { display: flex; align-items: flex-start; gap: 6px; font-family: var(--font-display); font-weight: var(--w-light); font-size: 64px; line-height: 1.14; letter-spacing: -2.4px; color: var(--text); }
.h2-about-stat__num svg { width: 18px; height: 18px; margin-top: 26px; }
.h2-about-stat__label { color: var(--muted); }
.h2-about__photo { position: relative; border-radius: var(--r); overflow: hidden; min-height: 600px; }
.h2-about__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* ===== Services: 2 × 2 white cards ===== */
.h2-svc-head { margin-top: 160px; scroll-margin-top: 100px; }
.h2-svc-grid { margin-top: 60px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.h2-svc { background: var(--surface); border-radius: var(--r-pill); padding: 40px; min-height: 558px; display: flex; flex-direction: column; justify-content: space-between; gap: 48px; }
.h2-svc__icon { width: 70px; height: 70px; color: var(--text); overflow: visible; }
.h2-svc__icon .h2-ac { fill: var(--accent); }
.h2-svc__body { display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.h2-svc__title { font-size: 40px; line-height: 1.4; letter-spacing: -1.4px; }
.h2-svc__body p { margin-top: 6px; color: var(--muted); max-width: 500px; }

/* ===== Benefits: dark band, glass card | photo | two glass stats ===== */
.h2-ben { padding: 140px 0; }
.h2-ben-grid { margin-top: 60px; display: grid; grid-template-columns: 424fr 453fr 363fr; gap: 16px; min-height: 520px; }
.h2-ben-card { background: var(--dark-card); border: 1px solid var(--dark-line); border-radius: var(--r-lg); padding: 32px; }
.h2-ben-mission { display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; gap: 40px; }
.h2-ben-mission h3 { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; max-width: 337px; }
.h2-ben-mission p { margin-top: 12px; color: var(--on-dark-2); max-width: 353px; }
.h2-ben .btn--line { border-color: var(--dark-line); color: var(--on-dark); }
.h2-ben .btn--line .btn__go { background: var(--surface); color: var(--text); }
.h2-ben .btn--line:hover { border-color: var(--on-dark); }
.h2-ben-photo { position: relative; border-radius: var(--r-lg); overflow: hidden; min-height: 420px; }
.h2-ben-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 30% 50%; }
.h2-ben-stats { display: grid; grid-template-rows: 246fr 258fr; gap: 16px; }
.h2-ben-stat { display: flex; flex-direction: column; justify-content: space-between; gap: 32px; padding-top: 24px; padding-bottom: 24px; }
.h2-ben-stat__num { font-family: var(--font-display); font-weight: var(--w-light); font-size: 48px; line-height: 1.33; letter-spacing: -.5px; }
.h2-ben-stat p + p { color: var(--on-dark-2); }

/* ===== Testimonials + Why us: one paper band, the white panel meets its bottom edge ===== */
.h2-proofband { padding: 130px 0 0; }
.h2-why { margin-top: var(--section); }
.h2-why__panel { margin-top: 60px; background: var(--surface); border-radius: var(--r-lg) var(--r-lg) 0 0; padding: 24px 24px 40px; }
.h2-why__photo { position: relative; border-radius: var(--r); overflow: hidden; aspect-ratio: 1224 / 610; }
.h2-why__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 40%; }
.h2-why__list { margin-top: 40px; padding: 0 28px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 70px; }
.h2-why__item { display: flex; flex-direction: column; gap: 24px; }
.h2-why__item .icon-well svg { width: 24px; height: 24px; }
.h2-why__item p { margin-top: 12px; color: var(--muted); max-width: 330px; }

/* ===== FAQ then Articles (white), each 140px apart ===== */
.h2-faq { padding-top: 140px; }
.h2-articles { padding-bottom: 0; }

/* ===== Responsive ===== */
@media (max-width: 1100px) {
  .h2-hero h1 { font-size: 60px; }
  .h2-about__title { font-size: 40px; }
  .h2-svc { min-height: 480px; }
  .h2-ben-grid { grid-template-columns: 1fr 1fr; }
  .h2-ben-stats { grid-column: 1 / -1; grid-template-rows: none; grid-template-columns: 1fr 1fr; }
  .h2-why__list { gap: 40px; padding: 0 8px; }
  .h2-about, .h2-ben { padding: 104px 0; }
  .h2-proofband { padding-top: 104px; }
  .h2-svc-head { margin-top: 136px; }
  .h2-faq, .h2-articles { padding-top: 104px; }
}
@media (max-width: 900px) {
  .h2-hero__inner { flex-direction: column; align-items: flex-start; gap: 36px; padding-bottom: 64px; }
  .h2-about__grid { grid-template-columns: 1fr; row-gap: 24px; }
  .h2-about__copy { margin-bottom: 24px; }
  .h2-about__stats { grid-template-rows: none; grid-template-columns: 1fr 1fr; }
  .h2-about__photo { min-height: 0; aspect-ratio: 4 / 3; order: 1; }
  .h2-about__stats { order: 2; }
  .h2-why__list { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 640px) {
  .h2-hero { min-height: 780px; }
  .h2-hero__photo { object-position: 58% 0; height: 64%; -webkit-mask-image: linear-gradient(180deg, #000 70%, transparent); mask-image: linear-gradient(180deg, #000 70%, transparent); }
  .h2-hero::after { background: linear-gradient(180deg, rgba(23, 23, 20, .1) 0%, rgba(23, 23, 20, .1) 22%, rgba(23, 23, 20, .92) 50%, rgba(23, 23, 20, .97) 100%); }
  .h2-hero { background: var(--text); }
  .h2-hero__inner { padding-bottom: 48px; gap: 28px; }
  .h2-hero h1 { font-size: 44px; letter-spacing: -1.2px; }
  .h2-hero__kicker { font-size: 16px; }
  .h2-hero__side { width: 100%; max-width: 343px; gap: 20px; }
  .h2-proof__info { font-size: 16px; }
  .h2-about, .h2-ben { padding: 80px 0; }
  .h2-proofband { padding-top: 80px; }
  .h2-about__title { font-size: 30px; letter-spacing: -1px; }
  .h2-about__stats { grid-template-columns: 1fr; }
  .h2-about-stat { min-height: 0; gap: 28px; }
  .h2-about-stat__num { font-size: 48px; letter-spacing: -1.6px; }
  .h2-about-stat__num svg { width: 14px; height: 14px; margin-top: 18px; }
  .h2-svc-head { margin-top: 96px; }
  .h2-svc-grid { grid-template-columns: 1fr; margin-top: 40px; gap: 16px; }
  .h2-svc { min-height: 0; padding: 28px; border-radius: var(--r-lg); gap: 56px; }
  .h2-svc__icon { width: 56px; height: 56px; }
  .h2-svc__title { font-size: 32px; letter-spacing: -1.2px; }
  .h2-svc__body { gap: 24px; }
  .h2-ben-grid { grid-template-columns: 1fr; margin-top: 40px; }
  .h2-ben-mission { padding: 24px; }
  .h2-ben-mission h3 { font-size: 28px; letter-spacing: -1px; }
  .h2-ben-photo { min-height: 0; aspect-ratio: 4 / 5; }
  .h2-ben-stats { grid-column: auto; gap: 12px; }
  .h2-ben-stat { padding: 20px; gap: 24px; border-radius: var(--r); }
  .h2-ben-stat__num { font-size: 40px; }
  .h2-ben-stat p + p { font-size: 15px; }
  .h2-why__panel { margin-top: 40px; padding: 12px 12px 32px; }
  .h2-why__photo { aspect-ratio: 4 / 3; border-radius: var(--r-sm); }
  .h2-why__list { margin-top: 28px; padding: 0 12px; }
  .h2-why__item { gap: 18px; }
  .h2-faq, .h2-articles { padding-top: 80px; }
}

/* ───────── About ───────── */
/* Covra — About page (prefix ab-, body .page-about). Loads after covra.css. */

/* ===== Hero: sage band holding the card row, the intro line and the numbers ===== */
.ab-hero { background: var(--paper); padding: 144px 0 140px; }
.ab-cards { display: grid; grid-template-columns: 320fr 604fr 320fr; gap: 14px; height: 520px; }
.ab-cards__photo { position: relative; border-radius: var(--r); overflow: hidden; }
.ab-cards__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ab-cards__photo:first-child img { object-position: 40% 50%; }
.ab-title { background: var(--dark); color: var(--on-dark); border-radius: var(--r); padding: 40px 32px; display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 48px; text-align: center; }
.ab-title__top { display: flex; flex-direction: column; align-items: center; gap: 16px; }
.ab-title__kicker { font-family: var(--font-label); font-weight: 500; font-size: 14px; line-height: 1.7; letter-spacing: .6px; text-transform: uppercase; color: var(--lime); }
.ab-title h1 { font-size: 72px; line-height: 1.06; letter-spacing: -1.5px; color: var(--on-dark); }
.ab-title__contact { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 32px; font-size: 16px; line-height: 1.5; letter-spacing: -.25px; }
.ab-title__contact span { color: var(--on-dark-2); }
.ab-title__contact a { margin-left: 2px; color: var(--lime); transition: opacity var(--dur-fast); }
.ab-title__contact a:hover { opacity: .8; }

/* Intro line */
.ab-intro { margin-top: 80px; padding-left: 334px; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.ab-intro__text { display: flex; flex-direction: column; gap: 16px; max-width: 778px; }
.ab-intro__lead { font-family: var(--font-display); font-weight: var(--w-light); font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; color: var(--text); }

/* Numbers: two stat cards + mission card | tall meadow photo */
.ab-numbers { margin-top: 140px; display: grid; grid-template-columns: 694fr 564fr; gap: 14px; }
.ab-numbers__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ab-stat { background: var(--surface); border-radius: var(--r); padding: 24px; min-height: 296px; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.ab-stat__icon { width: 60px; height: 60px; border-radius: var(--r-sm); border: 1px solid var(--line); display: grid; place-items: center; color: var(--text); }
.ab-stat__icon .ic { width: 32px; height: 32px; }
.ab-stat__num { display: block; font-family: var(--font-display); font-weight: var(--w-light); font-size: 48px; line-height: 1.33; letter-spacing: -.5px; color: var(--text); }
.ab-stat__label { display: block; margin-top: 6px; font-size: 16px; line-height: 1.5; letter-spacing: -.25px; color: var(--muted); }
.ab-mission { grid-column: 1 / -1; background: var(--surface); border-radius: var(--r); padding: 40px 32px; min-height: 295px; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.ab-mission__quote { font-family: var(--font-display); font-weight: var(--w-light); font-size: 24px; line-height: 1.33; letter-spacing: -.4px; color: var(--text); max-width: 600px; }
.ab-mission__foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.ab-mission .stars { color: var(--dark); }
.ab-mission .stars .ic { width: 20px; height: 20px; }
.ab-numbers__photo { position: relative; border-radius: var(--r); overflow: hidden; min-height: 605px; }
.ab-numbers__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }

/* Person (mission card + testimonial) */
.ab-person { display: flex; align-items: center; gap: 16px; }
.ab-person > span { display: flex; flex-direction: column; }
.ab-person__name { font-size: 20px; line-height: 1.6; letter-spacing: -.2px; color: var(--text); }
.ab-person__name--bold { font-weight: var(--w-bold); }
.ab-person__role { font-size: 16px; line-height: 1.5; letter-spacing: -.25px; color: var(--muted); }
.ab-voice .ab-person__role { font-size: 18px; line-height: 1.6; letter-spacing: -.2px; }

/* ===== Process: the shared step cards as a carousel ===== */
.ab-steps { display: flex; gap: var(--gap); margin-top: 56px; }
.ab-steps > .step { width: 410px; }
.page-about #process .reviews-nav { margin-top: 60px; }

/* ===== Testimonial: one big quote, label on the left ===== */
.ab-voice { padding-top: 140px; }
.ab-voice__grid { display: grid; grid-template-columns: 1fr minmax(0, 780px); gap: 40px; align-items: start; }
.ab-voice__grid > .eyebrow { position: sticky; top: 120px; }
.ab-voice__main { position: relative; min-width: 0; }
.ab-voice__track { margin-right: 0; padding-right: 0; gap: 40px; }
.ab-quote { width: 100%; display: flex; flex-direction: column; gap: 32px; }
.ab-quote__rating { display: flex; align-items: center; gap: 6px; }
.ab-quote__rating .stars .ic { width: 24px; height: 24px; }
.ab-quote__score { font-weight: var(--w-bold); font-size: 20px; line-height: 1.55; letter-spacing: .5px; color: var(--text); }
.ab-quote__text { font-family: var(--font-display); font-weight: var(--w-light); font-size: 40px; line-height: 1.4; letter-spacing: -1.4px; color: var(--text); }
.ab-quote .ab-person { margin-top: auto; padding-top: 28px; padding-right: 136px; }
.ab-voice__arrows { position: absolute; right: 0; bottom: 2px; }
.ab-arrow { background: transparent; border: 1px solid var(--line); color: var(--text); }
.ab-arrow--next { color: var(--accent-ink); }
.ab-arrow:hover { background: var(--dark); border-color: var(--dark); color: var(--on-dark); }
.ab-arrow[disabled], .ab-arrow[disabled]:hover { background: transparent; border-color: var(--line); color: var(--text); }

/* ===== Responsive ===== */
@media (max-width: 1100px) {
  .ab-cards { grid-template-columns: 1fr 1.7fr 1fr; height: 460px; }
  .ab-title h1 { font-size: 60px; }
  .ab-intro { padding-left: 0; }
  .ab-numbers { grid-template-columns: 1fr; }
  .ab-numbers__photo { min-height: 0; aspect-ratio: 564 / 605; max-height: 720px; }
  .ab-voice__grid { grid-template-columns: 1fr; gap: 32px; }
  .ab-voice__grid > .eyebrow { position: static; }
}
@media (max-width: 900px) {
  .ab-hero { padding-top: 104px; }
  .ab-cards { grid-template-columns: 1fr 1fr; height: auto; }
  .ab-title { grid-column: 1 / -1; order: -1; min-height: 360px; }
  .ab-cards__photo { aspect-ratio: 4 / 5; }
  .ab-intro { margin-top: 64px; }
  .ab-numbers { margin-top: 80px; }
}
@media (max-width: 640px) {
  .ab-hero { padding: 96px 0 80px; }
  .ab-cards { gap: 10px; }
  .ab-title { min-height: 300px; padding: 32px 20px; gap: 32px; }
  .ab-title h1 { font-size: 44px; letter-spacing: -1.2px; }
  .ab-title__contact { flex-direction: column; align-items: center; gap: 6px; }
  .ab-intro__lead { font-size: 26px; letter-spacing: -1px; }
  .ab-numbers { margin-top: 64px; gap: 12px; }
  .ab-numbers__cards { gap: 12px; }
  .ab-stat { min-height: 0; padding: 18px; gap: 28px; }
  .ab-stat__icon { width: 48px; height: 48px; }
  .ab-stat__icon .ic { width: 26px; height: 26px; }
  .ab-stat__num { font-size: 36px; }
  .ab-stat__label { font-size: 15px; }
  .ab-mission { padding: 28px 20px; min-height: 0; gap: 28px; }
  .ab-mission__quote { font-size: 21px; }
  .ab-steps { margin-top: 40px; }
  .ab-steps > .step { width: 300px; }
  .page-about #process .reviews-nav { margin-top: 40px; }
  .ab-voice { padding-top: 80px; }
  .ab-quote__text { font-size: 28px; letter-spacing: -1px; }
  .ab-quote .ab-person { padding-top: 8px; padding-right: 0; }
  .ab-voice__arrows { position: static; margin-top: 32px; }
}

/* ───────── Variants ───────── */
/* Variants library page (pages/variants.html) + the new section compositions it documents. Prefix: v- */

/* Library chrome */
.v-intro { padding: 160px 0 56px; text-align: center; }
.v-intro .wrap { display: flex; flex-direction: column; align-items: center; gap: 20px; }
.v-intro h1 { font-size: 72px; line-height: 1.06; letter-spacing: -1.5px; }
.v-intro p { max-width: 620px; color: var(--muted); }
.v-jump { margin-top: 16px; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 28px; font-size: 16px; }
.v-jump li { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px 10px; max-width: 100%; }
.v-jump span { color: var(--muted); }
.v-jump a { padding: 4px 12px; border-radius: var(--r-pill); background: var(--surface-2); font-family: var(--mono); font-size: 13px; transition: background-color var(--dur-fast); }
.v-jump a:hover { background: var(--lime); }
.v-var { padding-block: 56px; scroll-margin-top: 90px; }
.v-label { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-bottom: 48px; padding: 14px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font-size: 14px; line-height: 1.45; color: var(--text-2); }
.v-id { padding: 4px 10px; border-radius: var(--r-pill); background: var(--dark); color: var(--on-dark); font-family: var(--mono); font-size: 13px; }
.v-name { font-weight: var(--w-bold); color: var(--text); }
.v-use { flex: 1 1 280px; }
.v-cls { font-family: var(--mono); font-size: 13px; color: var(--muted); }
.v-var > .band-paper, .v-var > .band-dark, .v-var > .band-white, .v-var > .cta-photo { margin-top: 0; }
.v-var .band-white { padding-block: 40px; }

/* hero-d · Centred statement + wide photo with an overlapping quote form */
.v-hero-d { padding-top: 150px; text-align: center; }
.v-hero-d__head { display: flex; flex-direction: column; align-items: center; gap: 18px; }
.v-hero-d h2 { font-size: 72px; line-height: 1.06; letter-spacing: -1.5px; max-width: 760px; }
.v-hero-d__head > p:last-child { max-width: 520px; color: var(--muted); }
.v-hero-d__media { position: relative; margin-top: 56px; border-radius: var(--r-lg); overflow: hidden; min-height: 560px; display: flex; align-items: flex-end; justify-content: center; padding: 24px; }
.v-hero-d__media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 35%; }
.v-quote-form { position: relative; width: min(960px, 100%); background: var(--surface); border-radius: var(--r); padding: 20px; display: grid; grid-template-columns: 1.2fr 1fr 1fr auto; gap: 12px; align-items: end; text-align: left; box-shadow: var(--shadow-2); }
.v-quote-form .btn { min-height: 56px; }

/* hero-e · Mirrored split: photo left, copy right */
.v-hero-e { padding-top: 100px; display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.v-hero-e__media { position: relative; border-radius: var(--r); overflow: hidden; min-height: 760px; }
.v-hero-e__media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.v-hero-e__card { position: absolute; left: 20px; bottom: 20px; background: var(--surface); border-radius: var(--r); padding: 16px 20px 16px 16px; display: flex; align-items: center; gap: 16px; }
.v-hero-e__copy { display: flex; flex-direction: column; gap: 24px; align-items: flex-start; }
.v-hero-e__copy h2 { font-size: 72px; line-height: 1.06; letter-spacing: -1.5px; }
.v-hero-e__copy > p:not(.eyebrow) { color: var(--muted); max-width: 480px; }

/* hero-f · Wide photo + overlapping dark title card */
.v-hero-f { padding-top: 100px; position: relative; padding-bottom: 0; }
.v-hero-f__media { border-radius: var(--r-lg); overflow: hidden; height: 620px; }
.v-hero-f__media img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.v-hero-f__card { position: relative; width: min(760px, calc(100% - 48px)); margin: -180px auto 0; background: var(--dark); border-radius: var(--r-lg); padding: 48px 56px; display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; }
.v-hero-f__card h2 { font-size: 64px; line-height: 1.14; letter-spacing: -2.4px; color: var(--on-dark); max-width: 600px; }
.v-hero-f__card > p:not(.eyebrow) { color: var(--on-dark-2); max-width: 480px; }
@media (max-width: 1100px) { .v-hero-e { gap: 48px; } .v-hero-e__copy h2 { font-size: 56px; } .v-hero-f__card h2 { font-size: 54px; } }
@media (max-width: 900px) { .v-hero-e { grid-template-columns: 1fr; } .v-hero-e__media { min-height: 0; aspect-ratio: 4 / 5; } }
@media (max-width: 640px) { .v-hero-e, .v-hero-f { padding-top: 32px; } .v-hero-e__copy h2, .v-hero-f__card h2 { font-size: 44px; letter-spacing: -1.2px; } .v-hero-f__media { height: 360px; } .v-hero-f__card { margin-top: -80px; padding: 28px 20px; width: calc(100% - 24px); } }

/* services-c · Coverage rows beside a sticky photo */
.v-svc-c { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start; }
.v-svc-c__media { position: sticky; top: 100px; border-radius: var(--r-lg); overflow: hidden; aspect-ratio: 593 / 680; }
.v-svc-c__media img { width: 100%; height: 100%; object-fit: cover; }
.v-svc-c__list { margin-top: 40px; border-top: 1px solid var(--rule); }
.v-row { display: grid; grid-template-columns: 60px 1fr auto; gap: 24px; align-items: center; padding: 28px 0; border-bottom: 1px solid var(--rule); }
.v-row__icon { width: 60px; height: 60px; border-radius: var(--r-xs); background: var(--paper); display: grid; place-items: center; color: var(--accent); }
.v-row__icon .ic { width: 30px; height: 30px; }
.v-row h3 { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; }
.v-row p { margin-top: 4px; color: var(--muted); font-size: 16px; line-height: 1.5; }
.v-row__price { text-align: right; font-size: 16px; color: var(--muted); white-space: nowrap; }
.v-row__price b { display: block; font-family: var(--font-display); font-weight: var(--w-light); font-size: 32px; letter-spacing: -1.4px; color: var(--text); }

/* proof-c · Rating summary + three short reviews */
.v-proof-c { margin-top: 56px; display: grid; grid-template-columns: 1fr 2fr; gap: var(--gap); }
.v-sum { background: var(--dark); color: var(--on-dark); border-radius: var(--r-lg); padding: 36px; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.v-sum__score { font-family: var(--font-display); font-weight: var(--w-light); font-size: 96px; line-height: 1; letter-spacing: -3px; }
.v-sum .stars { color: var(--lime); }
.v-sum p { color: var(--on-dark-2); }
.v-bars { display: flex; flex-direction: column; gap: 10px; font-size: 15px; color: var(--on-dark-2); }
.v-bars li { display: grid; grid-template-columns: 52px 1fr 40px; gap: 12px; align-items: center; }
.v-bars i { height: 6px; border-radius: 3px; background: var(--dark-card); overflow: hidden; }
.v-bars i::before { content: ""; display: block; height: 100%; width: var(--w); background: var(--lime); border-radius: inherit; }
.v-proof-c__list { display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap); }
.v-mini { background: var(--surface); border-radius: var(--r-lg); padding: 28px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; }
.v-mini:first-child { grid-column: 1 / -1; }
.v-mini blockquote { font-size: 18px; color: var(--text); }
.v-mini figcaption { display: flex; align-items: center; gap: 12px; font-size: 16px; color: var(--muted); }
.v-mini figcaption img { width: 44px; height: 44px; border-radius: var(--r-round); object-fit: cover; object-position: 50% 15%; }
.v-mini figcaption b { display: block; font-weight: var(--w-bold); color: var(--text); }

/* steps-b · Numbered timeline beside a photo */
.v-steps-b { display: grid; grid-template-columns: 593fr 591fr; gap: 80px; align-items: stretch; }
.v-steps-b__media { position: relative; border-radius: var(--r-lg); overflow: hidden; min-height: 560px; }
.v-steps-b__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.v-timeline { margin-top: 48px; display: flex; flex-direction: column; }
.v-timeline li { position: relative; display: grid; grid-template-columns: 56px 1fr; gap: 24px; padding-bottom: 36px; }
.v-timeline li:not(:last-child)::before { content: ""; position: absolute; left: 27px; top: 60px; bottom: 4px; width: 1px; background: var(--rule); }
.v-timeline__n { width: 56px; height: 56px; border-radius: var(--r-round); background: var(--surface-2); display: grid; place-items: center; font-weight: var(--w-bold); font-size: 16px; color: var(--text); }
.v-timeline li:first-child .v-timeline__n { background: var(--accent); color: var(--on-accent); }
.v-timeline h3 { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; }
.v-timeline p { margin-top: 8px; color: var(--muted); }

/* pricing-a · Three plan cards with a billing toggle */
.v-pricing { margin-top: 48px; display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gap); align-items: stretch; }
.v-plan { background: var(--surface); border-radius: var(--r-lg); padding: 32px; display: flex; flex-direction: column; gap: 24px; }
.v-plan--pick { background: var(--dark); color: var(--on-dark); }
.v-plan__top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.v-plan h3 { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; }
.v-plan__badge { background: var(--lime); color: var(--on-lime); border-radius: var(--r-pill); padding: 4px 12px; font-size: 14px; font-weight: var(--w-bold); }
.v-plan__price { font-family: var(--font-display); font-weight: var(--w-light); font-size: 64px; line-height: 1; letter-spacing: -2.4px; }
.v-plan__price small { font-family: var(--font); font-weight: var(--w-medium); font-size: 16px; letter-spacing: -.25px; color: var(--muted); }
.v-plan--pick .v-plan__price small, .v-plan--pick .v-plan__list { color: var(--on-dark-2); }
.v-plan__list { display: flex; flex-direction: column; gap: 12px; color: var(--muted); font-size: 16px; line-height: 1.5; flex: 1; }
.v-plan__list li { display: flex; gap: 10px; }
.v-plan__list li::before { content: ""; flex: none; width: 8px; height: 8px; margin-top: 9px; border-radius: var(--r-round); background: var(--accent); }
.v-plan--pick .v-plan__list li::before { background: var(--lime); }
.v-plan .btn { align-self: stretch; justify-content: space-between; }
.v-billing { display: flex; justify-content: center; margin-top: 32px; }

/* pricing-b · Comparison table */
.v-table-wrap { margin-top: 48px; overflow-x: auto; border-radius: var(--r-lg); background: var(--surface); }
.v-table { width: 100%; min-width: 720px; border-collapse: collapse; font-size: 17px; }
.v-table th, .v-table td { padding: 20px 24px; text-align: left; border-bottom: 1px solid var(--surface-2); }
.v-table thead th { font-family: var(--font-display); font-weight: var(--w-light); font-size: 24px; letter-spacing: -.4px; color: var(--text); vertical-align: bottom; }
.v-table thead th small { display: block; font-family: var(--font); font-size: 15px; color: var(--muted); letter-spacing: -.2px; }
.v-table tbody th { font-weight: var(--w-medium); color: var(--text-2); }
.v-table td { color: var(--text); }
.v-table .v-col-pick { background: var(--paper); }
.v-table tr:last-child td, .v-table tr:last-child th { border-bottom: 0; }
.v-yes { color: var(--accent-ink); font-weight: var(--w-bold); }
.v-no { color: var(--muted); }

/* faq-b · Heading + help card left, accordion right */
.v-faq-b { display: grid; grid-template-columns: 476fr 780fr; gap: 16px; align-items: start; }
.v-faq-b__side { position: sticky; top: 100px; display: flex; flex-direction: column; gap: 32px; }
.v-help { background: var(--dark); color: var(--on-dark); border-radius: var(--r-lg); padding: 28px; display: flex; flex-direction: column; gap: 16px; }
.v-help h3 { font-size: 32px; line-height: 1.3; letter-spacing: -1.4px; }
.v-help p { color: var(--on-dark-2); }
.v-help .btn { align-self: flex-start; }
.v-faq-b .faq__list { margin-top: 0; }

/* cta-b · Dark band: copy + quote form */
.v-cta-b { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.v-cta-b h2 { font-size: 64px; line-height: 1.14; letter-spacing: -2.4px; color: var(--on-dark); max-width: 520px; }
.v-cta-b__copy { display: flex; flex-direction: column; gap: 24px; }
.v-cta-b__copy > p { color: var(--on-dark-2); max-width: 460px; }
.v-cta-b__form { background: var(--dark-card); border: 1px solid var(--dark-line); border-radius: var(--r-lg); padding: 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.v-cta-b__form .field--full, .v-cta-b__form .btn { grid-column: 1 / -1; }
.v-cta-b__form .btn { justify-content: space-between; }

@media (max-width: 1100px) {
  .v-quote-form { grid-template-columns: 1fr 1fr; }
  .v-quote-form .btn { grid-column: 1 / -1; justify-content: space-between; }
  .v-svc-c, .v-steps-b, .v-cta-b { gap: 48px; }
  .v-proof-c { grid-template-columns: 1fr; }
  .v-pricing { grid-template-columns: 1fr; max-width: 560px; margin-inline: auto; }
  .v-faq-b { grid-template-columns: 1fr; gap: 48px; }
  .v-faq-b__side { position: static; }
}
@media (max-width: 900px) {
  .v-svc-c, .v-steps-b, .v-cta-b { grid-template-columns: 1fr; }
  .v-svc-c__media { position: static; aspect-ratio: 4 / 3; }
  .v-steps-b__media { min-height: 0; aspect-ratio: 4 / 3; }
}
@media (max-width: 640px) {
  .v-intro { padding: 120px 0 32px; }
  .v-intro h1, .v-hero-d h2 { font-size: 44px; letter-spacing: -1.2px; }
  .v-var { padding-block: 40px; }
  .v-label { margin-bottom: 32px; }
  .v-hero-d { padding-top: 32px; }
  .v-hero-d__media { min-height: 0; padding: 12px; padding-top: 220px; }
  .v-quote-form { grid-template-columns: 1fr; padding: 16px; }
  .v-row { grid-template-columns: 48px 1fr; gap: 16px; }
  .v-row__icon { width: 48px; height: 48px; }
  .v-row__price { grid-column: 2; text-align: left; }
  .v-row h3, .v-timeline h3, .v-plan h3, .v-help h3 { font-size: 28px; letter-spacing: -1px; }
  .v-proof-c__list { grid-template-columns: 1fr; }
  .v-sum__score { font-size: 72px; }
  .v-cta-b h2 { font-size: 40px; letter-spacing: -1.4px; }
  .v-cta-b__form { grid-template-columns: 1fr; padding: 20px; }
  .v-plan__price { font-size: 48px; }
}

/* ───────── Styleguide ───────── */
/* Style guide page (pages/style-guide.html). Prefix: sg- */
.sg-top { padding: 124px 0 64px; background: var(--paper); }
.sg-title { display: flex; justify-content: space-between; align-items: flex-end; gap: 32px; }
.sg-title h1 { font-size: 72px; line-height: 1.06; letter-spacing: -1.5px; }
.sg-title p { max-width: 420px; color: var(--muted); }
.sg-bento { margin-top: 40px; display: grid; grid-template-columns: 1.15fr 1fr 1fr 1.05fr; grid-template-rows: 300px 316px; gap: 16px; }
.sg-tile { border-radius: var(--r-lg); background: var(--surface); padding: 24px; position: relative; overflow: hidden; min-width: 0; }
.sg-tile__k { font-family: var(--font-label); font-weight: 500; font-size: 14px; letter-spacing: .6px; text-transform: uppercase; color: var(--text-2); }
.sg-type { grid-row: span 2; display: flex; flex-direction: column; justify-content: space-between; }
.sg-aa { font-family: var(--font-display); font-weight: var(--w-light); font-size: 220px; line-height: .9; letter-spacing: -8px; }
.sg-fams { display: flex; flex-direction: column; gap: 10px; }
.sg-fams p { display: flex; justify-content: space-between; gap: 12px; padding-top: 10px; border-top: 1px solid var(--surface-2); font-size: 16px; color: var(--muted); }
.sg-fams b { font-weight: var(--w-medium); color: var(--text); }
.sg-fams .sg-serif { font-family: var(--font-display); font-weight: var(--w-light); font-size: 22px; letter-spacing: -.4px; }
.sg-fams .sg-label { font-family: var(--font-label); font-weight: 500; text-transform: uppercase; letter-spacing: .6px; font-size: 14px; }
.sg-colors { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: 1fr 1fr; gap: 8px; padding: 8px; }
.sg-chip { border-radius: var(--r-sm); padding: 14px; display: flex; flex-direction: column; justify-content: flex-end; font-size: 14px; line-height: 1.45; min-height: 0; }
.sg-chip b { font-weight: var(--w-bold); }
.sg-chip code { font-family: var(--mono); font-size: 11px; white-space: nowrap; }
.sg-steptile { background: var(--paper); display: flex; flex-direction: column; gap: 14px; }
.sg-steptile .step { flex: 1; min-height: 0; padding: 22px; }
.sg-steptile .step .step__title { margin-top: 24px; }
.sg-steptile .step p:last-child { font-size: 16px; line-height: 1.5; }
.sg-chip--line { box-shadow: inset 0 0 0 1px var(--line); }
.sg-photo { grid-column: span 2; padding: 0; }
.sg-photo > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.sg-photo .proof-card { bottom: 16px; }
.sg-dark { background: var(--dark); color: var(--on-dark); display: flex; flex-direction: column; justify-content: space-between; }
.sg-dark .sg-tile__k { color: var(--on-dark-2); }
.sg-dark .stat__num { font-size: 64px; }
.sg-btns { display: flex; flex-direction: column; justify-content: space-between; gap: 12px; }
.sg-btns .btn { align-self: flex-start; }
.sg-btns__row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }

.sg-sec { padding: 96px 0 0; }
.sg-sec:last-of-type { padding-bottom: 120px; }
.sg-sec > .wrap > .head { margin-bottom: 40px; }
.sg-sec .head h2 { max-width: none; }
.sg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; }
.sg-sw { border-radius: var(--r); overflow: hidden; background: var(--surface); box-shadow: inset 0 0 0 1px var(--line-2); }
.sg-sw i { display: block; height: 96px; box-shadow: inset 0 -1px 0 var(--line-2); }
.sg-sw p { padding: 12px 14px 14px; font-size: 14px; line-height: 1.45; color: var(--muted); }
.sg-sw b { display: block; font-size: 16px; font-weight: var(--w-bold); color: var(--text); }
.sg-group { margin: 40px 0 16px; font-family: var(--font-label); font-weight: 500; font-size: 14px; letter-spacing: .6px; text-transform: uppercase; color: var(--text-2); }
.sg-group:first-child { margin-top: 0; }
.sg-specs { display: flex; flex-direction: column; }
.sg-spec { display: grid; grid-template-columns: 220px 1fr; gap: 32px; align-items: baseline; padding: 24px 0; border-top: 1px solid var(--rule); }
.sg-spec code, .sg-meta { font-family: var(--mono); font-size: 14px; color: var(--muted); line-height: 1.5; }
.sg-spec__demo { min-width: 0; overflow-wrap: anywhere; }
.sg-radii { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 16px; }
.sg-radius { aspect-ratio: 1; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); display: flex; align-items: flex-end; padding: 14px; font-size: 14px; }
.sg-space { display: flex; flex-direction: column; gap: 10px; }
.sg-space li { display: grid; grid-template-columns: 180px 1fr; align-items: center; gap: 16px; font-size: 15px; color: var(--muted); }
.sg-space span { display: block; height: 14px; border-radius: 4px; background: var(--accent); width: var(--w); max-width: 100%; }
.sg-comp { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.sg-box { border-radius: var(--r-lg); background: var(--paper); padding: 32px; display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.sg-box--dark { background: var(--dark); color: var(--on-dark); }
.sg-box--wide { grid-column: 1 / -1; }
.sg-box > .sg-meta { order: 99; }
.sg-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.sg-box .svc, .sg-box .review { width: 100%; max-width: 411px; }
.sg-box .review { max-width: none; min-height: 0; }
.sg-icons { display: grid; grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)); gap: 12px; }
.sg-icon { border-radius: var(--r); background: var(--paper); padding: 18px 12px; display: flex; flex-direction: column; align-items: center; gap: 10px; font-family: var(--mono); font-size: 13px; color: var(--muted); }
.sg-icon .ic { width: 28px; height: 28px; color: var(--text); }
.sg-ease { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.sg-ease div { border-radius: var(--r); background: var(--paper); padding: 20px; position: relative; height: 96px; overflow: hidden; }
.sg-ease i { position: absolute; left: 20px; bottom: 20px; width: 40px; height: 40px; border-radius: var(--r-round); background: var(--accent); animation: sg-slide 2.6s var(--e) infinite alternate; }
.sg-ease p { font-family: var(--mono); font-size: 13px; color: var(--muted); }
@keyframes sg-slide { to { transform: translateX(calc(100% * 6)); } }

@media (max-width: 1100px) {
  .sg-bento { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .sg-type { grid-row: auto; grid-column: 1 / -1; min-height: 320px; }
  .sg-photo { min-height: 420px; }
  .sg-colors { min-height: 260px; }
  .sg-comp { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .sg-top { padding: 104px 0 48px; }
  .sg-title { flex-direction: column; align-items: flex-start; }
  .sg-title h1 { font-size: 44px; letter-spacing: -1.2px; }
  .sg-bento { grid-template-columns: 1fr; }
  .sg-photo { grid-column: auto; min-height: 460px; }
  .sg-aa { font-size: 150px; }
  .sg-spec { grid-template-columns: 1fr; gap: 10px; }
  .sg-space li { grid-template-columns: 120px 1fr; }
  .sg-box { padding: 20px; }
  .sg-ease { grid-template-columns: 1fr; }
  .sg-sec { padding-top: 72px; }
}

/* Balanced headline breaks (Farhan 2026-10-10): every heading that wraps splits into even lines, never a long line
   over a short one. Never remove. */
h1, h2, h3, h4, h5, h6, [class*="t-h"], .h1, .h2, .h3, blockquote, blockquote p, .statement, [class*="quote"] p { text-wrap: balance; }
