/* Rota Generator UI5 public design system: consistent marketing typography, navigation, footer and help centre. */
:root {
  --pub-navy-950:#06254f;
  --pub-navy-800:#123f70;
  --pub-teal-700:#0b858e;
  --pub-teal-500:#1db7b2;
  --pub-text:#17324f;
  --pub-muted:#647b91;
  --pub-line:#dce7ed;
  --pub-canvas:#f6f9fb;
  --pub-soft:#eef8f7;
  --pub-white:#fff;
  --pub-radius:16px;
  --pub-h1:clamp(2.55rem,4.4vw,3.65rem);
  --pub-h2:clamp(1.85rem,3vw,2.45rem);
  --pub-h3:1.18rem;
  --pub-body:1rem;
}
*{box-sizing:border-box}
.public-body{margin:0;background:#fff;color:var(--pub-text);font-family:"Segoe UI Variable Text","Segoe UI",Aptos,Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.public-body a{color:inherit}
.public-body .container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.public-main{min-height:55vh}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Shared public header */
.public-header{position:relative;z-index:30;background:rgba(255,255,255,.96);border-bottom:1px solid #e7eef2;backdrop-filter:blur(12px)}
.public-header-inner{min-height:78px;display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:28px}
.public-brand{display:flex;align-items:center;width:fit-content;text-decoration:none}
.public-brand img{display:block;width:142px;height:55px;object-fit:contain;object-position:left center}
.public-nav{display:flex;justify-content:center;align-items:center;gap:26px}
.public-nav a,.public-login{color:#385670;text-decoration:none;font-size:.91rem;font-weight:600;transition:color .16s ease}
.public-nav a:hover,.public-login:hover{color:var(--pub-teal-700)}
.public-actions{display:flex;align-items:center;gap:15px}
.public-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;border:1px solid transparent;border-radius:11px;text-decoration:none;font-size:.91rem;font-weight:700;line-height:1.2;cursor:pointer;font-family:inherit}
.public-button-primary{background:var(--pub-navy-950);color:#fff!important;box-shadow:0 7px 18px rgba(6,37,79,.12)}
.public-button-primary:hover{background:#0a356c}
.public-button-secondary{background:#fff;color:var(--pub-navy-950)!important;border-color:#cbdce6}
.public-button-secondary:hover{border-color:#97b8ca;background:#f9fcfd}

/* Shared typography hierarchy */
.public-eyebrow,.public-body .eyebrow{margin:0 0 10px;color:var(--pub-teal-700);font-size:.73rem;font-weight:750;letter-spacing:.075em;text-transform:uppercase}
.public-lead{margin:0;color:#5e758b;font-size:1.08rem;line-height:1.72}
.public-page-hero h1,.help-article-header h1,.home-hero-copy-v4 h1,.pricing-hero h1{margin:0;color:var(--pub-navy-950);font-size:var(--pub-h1)!important;line-height:1.08!important;letter-spacing:-.038em!important;font-weight:700!important}
.public-section-heading h2,.home-section-heading-v4 h2,.home-split-copy-v4 h2,.home-pricing-copy-v4 h2,.home-final-cta-v4 h2,.pricing-faq-panel h2,.public-help-cta h2{margin:0;color:var(--pub-navy-950);font-size:var(--pub-h2)!important;line-height:1.18!important;letter-spacing:-.03em!important;font-weight:700!important}
.public-section-heading>p:last-child{margin:11px 0 0;max-width:720px;color:var(--pub-muted);font-size:1rem;line-height:1.7}
.public-section{padding-block:78px}

/* Homepage harmonisation */
.home-hero-v4{min-height:auto!important;padding-top:72px!important;padding-bottom:80px!important;gap:52px!important}
.home-hero-copy-v4 h1{max-width:650px!important;margin-bottom:19px!important}
.home-hero-copy-v4 h1 span{color:var(--pub-teal-700)!important}
.home-overline-v4{font-size:.75rem!important;font-weight:700!important;letter-spacing:.07em!important;color:var(--pub-teal-700)!important}
.home-hero-lead-v4{font-size:1.04rem!important;line-height:1.74!important;color:#5f768b!important}
.home-free-note-v4{font-size:.92rem!important;color:#526b82!important}
.home-trust-row-v4 span::before{background:var(--pub-teal-500)!important}
.home-section-v4{padding-top:80px!important;padding-bottom:80px!important}
.home-section-heading-v4{margin-bottom:32px!important}
.home-feature-card-v4 h3,.home-intro-grid-v4 h3,.home-guidance-grid-v4 h3,.home-steps-v4 h3{font-family:inherit!important;font-size:var(--pub-h3)!important;letter-spacing:-.015em!important;line-height:1.35!important;font-weight:700!important}
.home-feature-card-v4 p,.home-intro-grid-v4 p,.home-guidance-grid-v4 p,.home-steps-v4 p,.home-split-copy-v4 p{font-size:.94rem!important;line-height:1.7!important;color:#62798f!important}
.home-final-cta-v4{margin-bottom:78px!important}

/* Pricing page */
.pricing-shell{padding-bottom:0!important}
.pricing-hero{max-width:850px!important;margin:68px auto 42px!important}
.pricing-hero .pill{display:inline-block;background:transparent!important;border:0!important;padding:0!important;color:var(--pub-teal-700)!important;font-size:.73rem!important;letter-spacing:.075em!important;font-weight:750!important}
.pricing-hero h1{margin:12px 0 15px!important}
.pricing-hero>p{color:var(--pub-muted)!important;font-size:1.04rem!important;line-height:1.7!important}
.public-pricing-grid{margin-bottom:68px}
.pricing-faq-panel{margin-bottom:80px}

/* Shared footer */
.public-footer{margin-top:0;background:#f7fafc;border-top:1px solid #e1eaf0;color:#526a80}
.public-footer-grid{display:grid;grid-template-columns:minmax(280px,1.7fr) repeat(3,minmax(140px,.7fr));gap:54px;padding-top:54px;padding-bottom:44px}
.public-footer-brand img{width:150px;height:64px;object-fit:contain;object-position:left center;display:block;margin-bottom:13px}
.public-footer-brand p{max-width:430px;margin:0;color:#667c90;font-size:.88rem;line-height:1.7}
.public-footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.public-footer-column strong{margin-bottom:3px;color:var(--pub-navy-950);font-size:.84rem;font-weight:750}
.public-footer-column a{color:#5c748a;text-decoration:none;font-size:.84rem}
.public-footer-column a:hover{color:var(--pub-teal-700)}
.public-footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:17px;padding-bottom:22px;border-top:1px solid #e0e9ee;color:#8091a0;font-size:.76rem}

/* Guest/auth pages use same site chrome */
.guest-public-main{background:linear-gradient(180deg,#f7fbfc,#fff 70%);padding:54px 0 72px}
.guest-public-main .guest-shell{width:min(510px,calc(100% - 36px));margin:0 auto;padding:0!important}
.guest-public-main .auth-card{border:1px solid #dce7ed!important;border-radius:18px!important;background:#fff!important;box-shadow:0 18px 42px rgba(6,37,79,.065)!important;padding:30px!important}
.guest-public-main .auth-card h1{font-family:inherit!important;color:var(--pub-navy-950)!important;font-size:2rem!important;line-height:1.2!important;letter-spacing:-.025em!important;font-weight:700!important}

/* Help centre */
.help-hero{padding:72px 0 62px;background:linear-gradient(180deg,#f1f9f8,#fff);border-bottom:1px solid #e6eff2}
.help-hero-inner{max-width:900px!important;text-align:center}
.help-hero .public-lead{max-width:790px;margin:16px auto 0}
.help-search{display:grid;grid-template-columns:1fr auto;gap:10px;max-width:760px;margin:28px auto 0;padding:8px;background:#fff;border:1px solid #d7e5eb;border-radius:14px;box-shadow:0 14px 34px rgba(6,37,79,.055)}
.help-search input{min-width:0;border:0!important;outline:0!important;background:transparent!important;padding:11px 13px!important;color:var(--pub-text)!important;font:inherit!important;box-shadow:none!important}
.help-search input::placeholder{color:#94a4b2}
.help-search-status{display:flex;justify-content:center;gap:18px;margin-top:15px;color:#6d8193;font-size:.84rem}
.help-search-status a{color:var(--pub-teal-700);font-weight:700;text-decoration:none}
.help-popular{padding-bottom:30px}
.help-popular-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.help-popular-card{position:relative;min-height:180px;padding:22px;border:1px solid var(--pub-line);border-radius:16px;background:#fff;text-decoration:none;box-shadow:0 6px 22px rgba(6,37,79,.025);transition:.18s ease}
.help-popular-card:hover{transform:translateY(-2px);border-color:#b9d9dc;box-shadow:0 14px 32px rgba(6,37,79,.06)}
.help-popular-card h3{margin:25px 0 8px;color:var(--pub-navy-950);font-size:1.04rem;line-height:1.35;font-weight:700}
.help-popular-card p{margin:0;color:#6b8094;font-size:.84rem;line-height:1.6}
.help-card-arrow{position:absolute;right:19px;top:16px;color:var(--pub-teal-700);font-size:1.1rem}
.help-library{padding-top:62px}
.help-category{display:grid;grid-template-columns:260px minmax(0,1fr);gap:42px;padding:34px 0;border-top:1px solid #e5edf1}
.help-category:first-of-type{margin-top:24px}
.help-category-intro h3{margin:0 0 8px;color:var(--pub-navy-950);font-size:1.08rem;font-weight:700}
.help-category-intro p{margin:0;color:#718598;font-size:.84rem;line-height:1.6}
.help-article-list{border:1px solid #dfe8ed;border-radius:15px;overflow:hidden;background:#fff}
.help-article-row{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:17px 19px;border-bottom:1px solid #e7eef2;text-decoration:none}
.help-article-row:last-child{border-bottom:0}
.help-article-row:hover{background:#f7fbfb}
.help-article-row strong{display:block;color:var(--pub-navy-950);font-size:.91rem;font-weight:700}
.help-article-row div span{display:block;margin-top:4px;color:#73879a;font-size:.8rem;line-height:1.45}
.help-article-row>span{flex:0 0 auto;color:var(--pub-teal-700);font-weight:700}
.help-empty{padding:35px;border:1px solid #dce7ed;border-radius:16px;background:#f9fcfd;text-align:center}
.help-empty h3{margin:0;color:var(--pub-navy-950);font-size:1.2rem}.help-empty p{color:var(--pub-muted)}
.public-help-cta{background:#f1f8f8;border-top:1px solid #e1ecef}
.public-help-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-top:54px;padding-bottom:54px}
.public-help-cta-inner>div{max-width:720px}
.public-help-cta h2{margin-bottom:9px}.public-help-cta p:last-child{margin:0;color:#667d91}

/* Help article */
.help-article-shell{padding-top:28px;padding-bottom:90px}
.public-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 0 26px;color:#8293a2;font-size:.8rem}
.public-breadcrumbs a{color:#58728a;text-decoration:none}.public-breadcrumbs a:hover{color:var(--pub-teal-700)}
.help-article-layout{display:grid;grid-template-columns:minmax(0,760px) 300px;justify-content:space-between;gap:70px;align-items:start}
.help-article-header{padding:23px 0 35px;border-bottom:1px solid #e4ecef}
.help-article-header .public-lead{margin-top:16px}
.help-copy-section{padding:32px 0;border-bottom:1px solid #e8eef2}
.help-copy-section h2{margin:0 0 13px;color:var(--pub-navy-950);font-size:1.55rem;line-height:1.3;letter-spacing:-.02em;font-weight:700}
.help-copy-section p{margin:0 0 13px;color:#506a82;font-size:.96rem;line-height:1.78}
.help-copy-section p:last-child{margin-bottom:0}
.help-copy-section ul{margin:16px 0 0;padding-left:0;list-style:none}
.help-copy-section li{position:relative;margin:9px 0;padding-left:22px;color:#536d84;font-size:.94rem;line-height:1.6}
.help-copy-section li::before{content:"";position:absolute;left:2px;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--pub-teal-500)}
.help-related{position:sticky;top:24px}
.help-related-card{padding:21px;border:1px solid #dce7ed;border-radius:16px;background:#f9fcfd}
.help-related-card h2{margin:0 0 14px;color:var(--pub-navy-950);font-size:1.08rem;font-weight:700}
.help-related-card a{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #e4edef;text-decoration:none;color:#4f6980}
.help-related-card a strong{font-size:.83rem;line-height:1.4;font-weight:650}.help-related-card a span{color:var(--pub-teal-700)}
.help-article-next-step{margin-top:34px;padding:22px;border:1px solid #cfe4e4;border-radius:16px;background:#f3faf9}
.help-article-next-step strong{color:var(--pub-navy-950);font-size:1rem}.help-article-next-step p{margin:6px 0 16px;color:#647c90;font-size:.9rem}

@media (max-width:980px){
  .public-header-inner{grid-template-columns:160px 1fr}.public-nav{display:none}.public-actions{justify-self:end}
  .public-footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:34px}.public-footer-column:last-child{grid-column:2/4}
  .help-popular-grid{grid-template-columns:repeat(2,1fr)}
  .help-category{grid-template-columns:1fr;gap:16px}
  .help-article-layout{grid-template-columns:1fr;gap:35px}.help-related{position:static}.help-related-card{max-width:620px}
}
@media (max-width:720px){
  .public-body .container{width:min(100% - 28px,1180px)}
  .public-header-inner{min-height:68px;grid-template-columns:1fr auto;gap:14px}.public-brand img{width:122px;height:48px}.public-login{display:none}.public-button{min-height:40px;padding:9px 13px;font-size:.84rem}
  .public-page-hero h1,.help-article-header h1,.home-hero-copy-v4 h1,.pricing-hero h1{font-size:clamp(2.2rem,11vw,2.8rem)!important}
  .public-section-heading h2,.home-section-heading-v4 h2,.home-split-copy-v4 h2,.home-pricing-copy-v4 h2,.home-final-cta-v4 h2,.pricing-faq-panel h2,.public-help-cta h2{font-size:1.8rem!important}
  .public-section{padding-block:60px}.home-section-v4{padding-top:62px!important;padding-bottom:62px!important}
  .home-hero-v4{padding-top:46px!important;padding-bottom:58px!important}
  .public-footer-grid{grid-template-columns:1fr 1fr;gap:28px 20px;padding-top:42px}.public-footer-brand{grid-column:1/-1}.public-footer-bottom{flex-direction:column;gap:4px}
  .help-hero{padding:54px 0 46px}.help-search{grid-template-columns:1fr}.help-popular-grid{grid-template-columns:1fr}.help-category{padding:27px 0}.help-article-row{padding:15px}.public-help-cta-inner{align-items:flex-start;flex-direction:column}.help-article-shell{padding-bottom:65px}
  .guest-public-main{padding-top:38px}.guest-public-main .auth-card{padding:23px!important}
}
