/* Surface, readability and contact audit v55. */
:root{--page-wash:radial-gradient(ellipse at 8% 6%,#7243ff0b,transparent 46%),linear-gradient(145deg,#fafafc,#f2f2f6 55%,#f8f7fb)}
:root[data-theme=dark]{--page-wash:radial-gradient(ellipse at 10% 8%,#9570ff0a,transparent 48%),linear-gradient(145deg,#2d2d33,#242428 60%,#2b2931)}
:root[data-theme] .gastro-page{background:var(--page-wash);background-attachment:fixed}
:root[data-theme] .gastro-page :is(.gastro-hero,.a2y-intro,.compact-trust,.compact-process,.a2y-value,.a2y-request,.v4-faq){background:transparent}
:root[data-theme] .gastro-page :is(.gastro-positioning,.hero-wtf-note,.hero-contact-note,.hero-offer-label,.hero-offer-tax,.film-caption>span){font-size:14px;line-height:1.55}
:root[data-theme] .gastro-page :is(.compact-process li p,.value-card p,.value-takeaway p,.compact-response){font-size:16px;line-height:1.65}
:root[data-theme] .gastro-page :is(.value-condition,.value-takeaway small){font-size:14px;line-height:1.6}
:root[data-theme] .gastro-page .a2y-request :is(.promo-note,.package-note,.package-note p,.package-note a,.proof-strip small,.gentle-note,.privacy-note,.summary-tax,#summary-warning,.summary-assurance p,.human p,#summary-scope,.summary-line,.question-field label span,.question-tools>span){font-size:14px;line-height:1.6}
:root[data-theme] .gastro-page .a2y-request :is(textarea,input,select){font-size:16px!important}
:root[data-theme] .gastro-page .a2y-request :is(.primary,#back,.package-bottom>span:first-child,.review-option small){font-size:15px;line-height:1.55}
:root[data-theme] .gastro-page .v4-faq .compact-final{margin:32px 0 0}
:root[data-theme] .gastro-page .v4-faq .compact-final a.offer-cta{display:inline-flex!important;align-items:center;justify-content:space-between;gap:24px;width:auto!important;max-width:100%;min-height:56px;padding:16px 24px!important;box-sizing:border-box;background:#6935df!important;color:#fff!important;border:0;border-radius:30px;text-decoration:none;font:600 16px/1.4 Schibsted,Arial,sans-serif;white-space:normal}
:root[data-theme] .gastro-page .v4-faq .compact-final a.offer-cta span{color:#fff!important;flex-shrink:0}
:root[data-theme] .gastro-page .v4-faq .compact-final a.offer-cta:hover{background:#5726c6!important}
/* Explicit surfaces and foregrounds for every layer of the contact dialog. */
:root[data-theme] .gastro-page #chat-dialog{background:var(--a-surface);color:var(--a-ink);border:1px solid var(--a-line);border-radius:24px;max-height:calc(100dvh - 32px);overflow:auto;font-family:Schibsted,Arial,sans-serif}
:root[data-theme] .gastro-page #chat-dialog .chat-header{background:var(--a-soft);color:var(--a-ink);border-bottom:1px solid var(--a-line)}
:root[data-theme] .gastro-page #chat-dialog :is(h2,p,strong,button,span){color:inherit}
:root[data-theme] .gastro-page #chat-dialog .chat-header h2{font-size:23px;font-family:inherit;line-height:1.2}
:root[data-theme] .gastro-page #chat-dialog .chat-header p{font-size:13px;color:var(--a-muted)}
:root[data-theme] .gastro-page #chat-dialog .chat-body{background:var(--a-surface);color:var(--a-ink)}
:root[data-theme] .gastro-page #chat-dialog :is(.chat-received,.chat-draft){background:var(--a-soft);color:var(--a-ink);border:1px solid var(--a-line)}
:root[data-theme] .gastro-page #chat-dialog :is(.chat-detail,.chat-prompt,.chat-draft p,.chat-options button){font-size:15px;line-height:1.55}
:root[data-theme] .gastro-page #chat-dialog :is(.chat-disclosure,.chat-draft>span){font-size:13px;line-height:1.6;color:var(--a-muted)}
:root[data-theme] .gastro-page #chat-dialog .chat-options button{background:var(--a-surface);border-color:var(--a-line);color:var(--a-ink)}
:root[data-theme] .gastro-page #chat-dialog .chat-options button[aria-pressed=true]{background:var(--a-tint);border-color:var(--a-accent);color:var(--a-ink)}
:root[data-theme] .gastro-page #chat-dialog .chat-continue{background:#6935df;color:#fff;font-size:15px;line-height:1.4}
:root[data-theme] .gastro-page #chat-dialog .chat-avatar{background:#7243ff;color:#fff}
/* Footer uses the same grid with a clear brand area and a separate legal row. */
:root[data-theme] .gastro-page .site-footer{display:grid;grid-template-columns:1fr auto;gap:36px 48px;align-items:center;padding-top:48px;padding-bottom:36px;background:var(--a-surface);border-top:1px solid var(--a-line)}
:root[data-theme] .gastro-page .site-footer .brand{display:grid;grid-template-columns:48px auto;gap:4px 14px;align-items:center;justify-content:start;width:fit-content}
:root[data-theme] .gastro-page .site-footer .brand>svg{width:44px;height:44px;color:var(--a-accent)}
:root[data-theme] .gastro-page .site-footer .brand>span:not(.footer-why){font-family:Bricolage,Arial,sans-serif;font-size:48px;line-height:1;font-weight:750;letter-spacing:-.04em}
:root[data-theme] .gastro-page .site-footer .footer-why{display:block;grid-column:1/-1;max-width:none;margin-top:14px;font-family:Schibsted,Arial,sans-serif;font-size:16px;line-height:1.5;color:var(--a-muted);letter-spacing:0}
:root[data-theme] .gastro-page .site-footer .footer-studio{display:flex;align-items:center;gap:24px;text-decoration:none}
:root[data-theme] .gastro-page .site-footer .footer-studio img{width:80px;height:72px;object-fit:contain}
:root[data-theme] .gastro-page .site-footer .footer-studio span{font-size:14px;color:var(--a-muted)}
:root[data-theme] .gastro-page .site-footer nav{grid-column:1/-1;display:flex;gap:28px;padding-top:24px;border-top:1px solid var(--a-line);width:100%;justify-content:flex-start}
:root[data-theme] .gastro-page .site-footer nav a{font-size:14px;line-height:1.6;text-decoration:none}
:root[data-theme] .gastro-page .site-footer nav a:last-child{margin-left:auto}
@media(max-width:760px){:root[data-theme] .gastro-page .site-footer{grid-template-columns:1fr;gap:28px;padding-top:36px;padding-bottom:100px}:root[data-theme] .gastro-page .site-footer .footer-studio{justify-content:flex-start}:root[data-theme] .gastro-page .site-footer nav{flex-wrap:wrap;gap:18px 24px}:root[data-theme] .gastro-page .v4-faq .compact-final a.offer-cta{width:100%!important;font-size:15px}}
:root[data-theme] .gastro-page>main{background:var(--page-wash);background-attachment:fixed}
:root[data-theme] .gastro-page #chat-dialog{position:fixed;inset:16px 24px 16px auto;margin:auto 0;width:390px;height:fit-content;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);transform:none!important;box-sizing:border-box}
:root[data-theme] .gastro-page .site-footer nav{padding-right:140px;box-sizing:border-box}
@media(max-width:760px){:root[data-theme] .gastro-page #chat-dialog{inset:16px;margin:auto;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}:root[data-theme] .gastro-page .site-footer nav{padding-right:0}}
