/* Garson brand v2 — shared across the marketing pages.
   Dark header zone (nav + hero), light content sections, squared controls,
   kicker labels instead of pill+dot badges, product-vignette cards. */

/* ---------- Dark nav ---------- */
body .nav{background:rgba(18,14,11,.92);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:none}
body .nav .brand-word{color:#fff}
body .nav .nav-links a{color:rgba(255,255,255,.82)}
body .nav .nav-links a:hover{color:#fff}
body .nav .nav-links a::after{background:var(--gold)}
body .nav .lang-btn{background:transparent;border-color:rgba(255,255,255,.3);color:#fff}
body .nav .lang-btn:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}
body .nav .nav-login{color:#fff}
body .nav .nav-login:hover{border-color:#fff}
body .nav .btn-gold{background:#fff;color:#171310;border-color:#fff;border-radius:10px;box-shadow:none}
body .nav .btn-gold:hover{background:#fff4ee}
body .nav a:focus-visible,body .nav button:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:8px}

/* FAQ top bar (its own header markup) */
body .au-topbar{max-width:none;background:rgba(18,14,11,.95);padding:14px clamp(20px,4vw,56px);border-bottom:1px solid rgba(255,255,255,.08)}
body .au-topbar .brand-word{color:#fff}
body .au-topbar .btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:10px}
body .au-topbar .btn-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff}

/* ---------- Dark page hero (inner pages) ---------- */
body .hero.hero-solo,body .au-hero{
  background-color:#120e0b;background-image:url('/images/hero-cashier-bg.jpg');background-size:cover;background-position:center 30%;
  padding:104px 24px 96px;color:#fff;
}
body .hero.hero-solo::before,body .au-hero::before{
  background:linear-gradient(0deg,rgba(18,14,11,.9) 0%,rgba(18,14,11,0) 55%),linear-gradient(180deg,rgba(18,14,11,.72),rgba(18,14,11,.8));
}
body .hero.hero-solo::after{display:none}
body .hero.hero-solo .hero-wave,body .au-hero .au-hero-wave{display:none}
body .hero.hero-solo h1,body .au-hero h1{font-weight:500;font-size:clamp(34px,4.8vw,60px);line-height:1.22;letter-spacing:-.5px;text-wrap:balance}
body .hero.hero-solo p.lead,body .au-hero p.lead{color:rgba(255,255,255,.78)}
body .hero.hero-solo .btn-gold{background:#fff;color:#171310;border-color:#fff}

/* ---------- Kicker label (replaces pill + dot eyebrow) ---------- */
body .eyebrow,body .eyebrow:hover,body .au-eyebrow{display:flex;flex-direction:column;align-items:center;gap:12px;background:none;border:0;border-radius:0;padding:0;margin-bottom:18px;color:var(--gold-dim);font-size:14px;font-weight:800;letter-spacing:.04em;text-transform:none}
body .eyebrow::before,body .au-eyebrow::before{content:"";width:34px;height:3px;border-radius:2px;background:var(--gold);flex:none}
body .eyebrow .dot,body .au-eyebrow .dot,body .au-eyebrow svg{display:none}
body .hero .eyebrow,body .hero .eyebrow:hover,body .au-hero .au-eyebrow{color:#F5A688;background:none;border:0;padding:0}

/* ---------- Squared controls ---------- */
body .btn{border-radius:12px}
body .btn-ghost.btn-sm{border-radius:10px}
body .price-badge,body .cmp-badge{border-radius:8px}
body .price-duration-chip,body .cmp-scroll-hint{border-radius:10px}
body .btn-submit{border-radius:12px}

/* ---------- Cards ---------- */
body .why-card,body .feat-card,body .step,body .cx-card{background:#fff;border:1px solid rgba(20,20,25,.1);border-radius:18px;box-shadow:0 1px 2px rgba(20,20,25,.04),0 18px 34px -24px rgba(20,20,25,.28);overflow:visible;position:relative}
body .why-card:hover,body .feat-card:hover,body .step:hover,body .cx-card:hover{border-color:rgba(230,90,47,.5);box-shadow:0 1px 2px rgba(20,20,25,.04),0 24px 44px -24px rgba(230,90,47,.35)}
body .why-grid,body .feat-grid,body .steps,body .cx-journey-grid{row-gap:44px}
body .why-card h3,body .feat-card h3,body .step h4,body .cx-card h4{font-weight:700;font-size:19px;line-height:1.5}

/* A — product vignette on top of the card */
body .why-card.has-vg,body .feat-card.has-vg{padding:0;overflow:hidden;text-align:start}
.has-vg .vg{height:156px;background:#f3f3f1;position:relative;overflow:hidden;border-bottom:1px solid rgba(20,20,25,.08)}
.has-vg .vg::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(20,20,25,.09) 1px,transparent 1px);background-size:14px 14px}
.has-vg .vb{padding:22px 24px 26px}
.has-vg .why-card-head,.has-vg .feat-card-head{display:block;margin:0 0 14px}
.has-vg .why-card-divider,.has-vg .feat-card-divider{display:none}
.has-vg h3{margin:0}
.has-vg ul{gap:12px}
.has-vg ul li svg{display:none}
.has-vg ul li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);margin-top:9px;flex:none}
.vc{position:absolute;background:#fff;border-radius:12px;box-shadow:0 10px 24px -10px rgba(20,20,25,.35);padding:9px 13px;font-size:13px;font-weight:700;display:flex;gap:8px;align-items:center;color:#191919;white-space:nowrap}
.vc i{width:8px;height:8px;border-radius:50%;background:var(--gold);display:block;flex:none}
.vc.o{background:var(--gold);color:#fff}.vc.d{background:#171310;color:#fff}.vc.s{font-weight:600;font-size:12px}
.vc.b{background:#2563eb;color:#fff}.vc.a{background:#d97706;color:#fff}.vc.g{background:#15803d;color:#fff}
.vc.r i{background:#dc2626}
.vbar{position:absolute;bottom:0;width:26px;border-radius:6px 6px 0 0;background:var(--gold)}
.vdish{width:30px;height:30px;border-radius:9px;background:radial-gradient(circle at 35% 30%,#f3d9a8,#c98a3e 70%);flex:none;margin:-3px 0}
.vqr{position:absolute;width:92px;height:92px;background:#fff;border-radius:12px;padding:8px;box-shadow:0 10px 24px -10px rgba(20,20,25,.35)}
/* vignette positions are logical so they mirror with the page direction */
.vp1{top:24px;inset-inline-end:30px}.vp2{top:74px;inset-inline-start:30px}.vp3{top:114px;inset-inline-end:56px}

/* Numbered badge hanging on the top edge (real sequences only) */
body .step{padding:44px 26px 32px;text-align:center}
body .step .circle{position:absolute;top:-22px;inset-inline-start:50%;translate:-50% 0;width:44px;height:44px;margin:0;background:var(--gold);box-shadow:0 0 0 6px #fff,0 10px 20px -6px rgba(230,90,47,.6);font-size:17px}
html[dir="rtl"] body .step .circle{translate:50% 0}
body .step .tile{display:flex;align-items:center;justify-content:center;margin:0 auto 18px;width:64px;height:64px;border-radius:16px;background:rgba(230,90,47,.1);color:var(--gold);border:1px solid rgba(230,90,47,.2)}
body .step .tile svg{width:26px;height:26px}
body .step p{max-width:270px}
body .cx-card{padding:30px 14px 8px}
body .cx-card-media{border-radius:12px;height:200px;margin-top:6px;overflow:hidden}
body .cx-card-body{padding:18px 8px 22px;text-align:center}
body .cx-card-num{position:absolute;top:-22px;inset-inline-start:50%;translate:-50% 0;width:44px;height:44px;margin:0;font-size:17px;background:var(--gold);box-shadow:0 0 0 6px #fff,0 10px 20px -6px rgba(230,90,47,.6)}
html[dir="rtl"] body .cx-card-num{translate:50% 0}
body .cx-card h4{margin:0 0 10px;font-size:17px}
body .cx-card p{font-size:13.5px}

/* Plain cards without a vignette keep a centered icon head */
body .why-card:not(.has-vg),body .feat-card:not(.has-vg){padding:34px 24px 28px;text-align:center}
body .why-card:not(.has-vg) .why-card-head,body .feat-card:not(.has-vg) .feat-card-head{flex-direction:column;gap:16px;margin-bottom:18px}
body .why-card:not(.has-vg) .why-card-ic,body .feat-card:not(.has-vg) .feat-ic{width:64px;height:64px;border-radius:16px;background:rgba(230,90,47,.1);color:var(--gold);box-shadow:none;border:1px solid rgba(230,90,47,.2)}
body .why-card:not(.has-vg) ul,body .feat-card:not(.has-vg) ul{text-align:start}
@media (max-width:820px){body .why-grid,body .feat-grid,body .steps,body .cx-journey-grid{row-gap:40px}}
@media (max-width:600px){body .hero.hero-solo,body .au-hero{padding:72px 20px 64px}}
@media (prefers-reduced-motion:reduce){body .why-card,body .feat-card,body .step,body .cx-card{transition:none}}

/* active link on the dark nav */
body .nav .nav-links a[aria-current="page"]{color:#fff !important;font-weight:700}
body .nav .nav-links a[aria-current="page"]::after{transform:scaleX(1);background:var(--gold)}

/* FAQ: full-bleed dark top bar and hero */
body{overflow-x:clip}
body .au-topbar{width:100vw;max-width:100vw;margin-inline:calc(50% - 50vw);box-sizing:border-box}
body .au-hero{width:100vw;margin-inline:calc(50% - 50vw);box-sizing:border-box}

body .au-hero{margin-top:-24px}
/* login + request-demo top bars */
body .topbar{width:100vw;max-width:100vw;margin-inline:calc(50% - 50vw);box-sizing:border-box;background:rgba(18,14,11,.95);padding:14px clamp(20px,4vw,56px);border-bottom:1px solid rgba(255,255,255,.08)}
body .topbar .brand-word,body .top .brand-word{color:#fff}
body .topbar .btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);box-shadow:none;border-radius:10px}
body .topbar .btn-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff}
body .top{background:rgba(18,14,11,.95);padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
body .top .lang-btn{background:transparent;border-color:rgba(255,255,255,.3);color:#fff}
body .top .lang-btn:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}

/* steps with a product vignette instead of an icon tile */
body .step.has-vg{padding:0;text-align:center}
body .step.has-vg .vg{border-radius:17px 17px 0 0;height:150px}
body .step.has-vg .vb{padding:22px 26px 30px}
body .step.has-vg h4{margin:0 0 8px}
body .step.has-vg p{margin-inline:auto}
body .step.has-vg .circle{z-index:3}
body .step.has-vg .tile{display:none}
body .step.has-vg .vg{height:164px}
body .step.has-vg .vg>*{margin-top:20px}

/* ---------- Footer v2 ---------- */
body footer.ft2{background:#120e0b;border-radius:0;padding:64px 0 28px;margin-top:0;color:rgba(255,255,255,.7);overflow:visible;border-top:1px solid rgba(255,255,255,.08)}
body footer.ft2::before{display:none}
footer.ft2 .wrap{max-width:1180px;margin:0 auto;padding:0 24px}
footer.ft2 .brand{display:inline-flex;align-items:center;gap:8px;direction:ltr;text-decoration:none}
footer.ft2 .brand-word{font-weight:800;font-size:22px;color:#fff;font-family:var(--font-en)}
footer.ft2 .brand-word .accent{color:var(--gold)}
footer.ft2 .brand .mark{width:26px;height:26px}.footer .brand .mark img,footer.ft2 .brand .mark img{width:100%;height:100%;object-fit:contain;display:block}
.ft2-top{display:grid;grid-template-columns:minmax(220px,1.1fr) 2.4fr;gap:56px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.1)}
.ft2-brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.ft2-brand p{margin:6px 0 0;font-size:15px;line-height:1.8;color:rgba(255,255,255,.75);max-width:260px}
.ft2-loc{font-size:13px;color:rgba(255,255,255,.45)}
.ft2-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.ft2-col h5{display:flex;flex-direction:column;gap:10px;margin:0 0 18px;font-size:14px;font-weight:800;color:#fff;letter-spacing:.04em}
.ft2-col h5::before{content:"";width:26px;height:2px;border-radius:2px;background:var(--gold)}
.ft2-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.ft2-col a{display:inline-flex;align-items:center;min-height:36px;font-size:14px;color:rgba(255,255,255,.68);text-decoration:none;transition:color .15s}
.ft2-col a:hover{color:#fff}
.ft2-col a:focus-visible,.ft2-btn:focus-visible,.ft2-soc:focus-visible,.ft2-mail:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:8px}
.ft2-cta{display:flex;flex-direction:column;align-items:flex-start}
.ft2-cta .ft2-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border-radius:12px;background:#fff;color:#171310;font-weight:800;font-size:15px;text-decoration:none;transition:background .18s,transform .18s}
.ft2-cta .ft2-btn:hover{background:#fff4ee;transform:translateY(-2px);color:#171310}
.ft2-cta .ft2-login{margin-top:10px;display:inline-flex;align-items:center;min-height:40px;font-size:14px;font-weight:700;color:#F5A688;text-decoration:none}
.ft2-cta .ft2-login:hover{color:#fff}
.ft2-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:24px}
.ft2-note{margin:0;font-size:13px;color:rgba(255,255,255,.45)}
.ft2-contact{display:flex;align-items:center;gap:10px}
.ft2-mail{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 6px;font-size:14px;color:rgba(255,255,255,.75);text-decoration:none;margin-inline-end:6px;direction:ltr}
.ft2-mail:hover{color:#fff}
.ft2-soc{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);color:rgba(255,255,255,.8);transition:background .18s,border-color .18s,color .18s}
.ft2-soc:hover{background:#fff;border-color:#fff;color:#171310}
.ft2-soc svg{width:17px;height:17px;display:block}
@media (max-width:900px){.ft2-top{grid-template-columns:1fr;gap:36px}.ft2-cols{grid-template-columns:repeat(2,1fr);gap:28px}}
@media (max-width:520px){body footer.ft2{padding-top:48px}.ft2-bar{flex-direction:column;align-items:flex-start}}
body footer.ft2{padding-bottom:96px}

/* ===== Sectors / Hotel / Open code (newer homepage sections) ===== */
body .sector-card{background:#fff;border:1px solid rgba(20,20,25,.1);border-radius:18px;box-shadow:0 1px 2px rgba(20,20,25,.04),0 18px 34px -24px rgba(20,20,25,.28);padding:0;overflow:hidden;text-align:start}
body .sector-card:hover{transform:none;border-color:rgba(230,90,47,.5);box-shadow:0 1px 2px rgba(20,20,25,.04),0 24px 44px -24px rgba(230,90,47,.35)}
body .sector-card.sector-highlight{background:#fff;border-color:rgba(230,90,47,.45)}
body .sector-card.has-vg .vg{height:140px}
body .sector-card.has-vg .vb{padding:20px 24px 24px}
body .sector-card h3{font-size:19px;font-weight:700;margin:0 0 8px}
body .sector-card p{font-size:14px;line-height:1.8}
body .sector-card-badge{top:14px;inset-inline-end:14px;border-radius:6px;background:#171310;color:#fff;border:0;padding:4px 10px;font-size:11px;z-index:2}
body .sector-grid,.sectors-grid{row-gap:22px}
.sector-card .vp1{top:22px}.sector-card .vp2{top:68px}.sector-card .vp3{top:104px}

/* hotel services: a service list, not icon discs */
body .hotel-services{gap:0;border:1px solid rgba(20,20,25,.1);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 18px 34px -26px rgba(20,20,25,.28)}
body .hotel-service{flex-direction:row;justify-content:flex-start;text-align:start;gap:14px;border:0;border-radius:0;box-shadow:none;background:#fff;padding:20px 22px;border-bottom:1px solid rgba(20,20,25,.08);border-inline-end:1px solid rgba(20,20,25,.08)}
body .hotel-service:hover{transform:none;box-shadow:none;background:#fbf7f4}
body .hotel-service .ic{width:auto;height:auto;border-radius:0;background:none;box-shadow:none;color:var(--gold);overflow:visible}
body .hotel-service .ic::after{display:none}
body .hotel-service .ic svg{width:22px;height:22px}
body .hotel-service span{font-size:15px;font-weight:700}
body .hotel-services{grid-template-columns:repeat(2,1fr)}
body .hotel-service:nth-child(2n){border-inline-end:0}
body .hotel-service:nth-last-child(-n+2){border-bottom:0}
@media (max-width:400px){body .hotel-services{grid-template-columns:1fr}body .hotel-service{border-inline-end:0}body .hotel-service:nth-last-child(2){border-bottom:1px solid rgba(20,20,25,.08)}}

/* open code */
body .freecode-visual{background:#f3f3f1;background-image:radial-gradient(rgba(20,20,25,.09) 1px,transparent 1px);background-size:14px 14px;border:1px solid rgba(20,20,25,.1);border-radius:18px}
body .freecode-card{border-radius:14px;box-shadow:0 10px 24px -10px rgba(20,20,25,.35)}
body .freecode-caption{border-radius:8px;background:#171310;color:#fff;font-weight:700}
body #freecode{background:#fff}
.hotel-layout .eyebrow,.freecode-layout .eyebrow{align-items:flex-start}
