/* ================================================================
   CONTACT PAGE (page-contact.php)
   Styles moved out of the template (no inline <style>). Tokens: tcn-base.css §0.
   ================================================================ */
he contact page (page-contact.php).site-header{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:transparent}
.site-header--scrolled{background:rgba(255,255,255,.85);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom-color:var(--clr-border)}

.ct-page{background:var(--panel)}

/* ── Hero ── */
.dpt2-detail-hero{position:relative;overflow:hidden;margin-top:calc(-1 * var(--header-height));padding:calc(64px + var(--header-height)) var(--sp-lg) 48px;background:var(--panel)}
.dpt2-detail-hero-bg{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at top, rgba(18,196,139,.10), transparent 60%)}
.dpt2-detail-hero-inner{position:relative;max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.dpt2-badge-row{display:flex;align-items:center;gap:10px}
.dpt2-badge{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.15em;color:var(--dept-color,#0d9488);background:rgba(13,148,136,.10);border:1px solid rgba(13,148,136,.28);border-radius:999px;padding:5px 11px}
.dpt2-detail-title{font-family:var(--dp-serif);font-size:clamp(32px,5vw,56px);line-height:.95;margin:0;color:var(--dept-color,#0d9488); text-transform: uppercase; }
.ct-hero-sub{font-size:.95rem;color:var(--clr-text-muted);margin:0;max-width:560px}

/* ── Body layout ── */
.ct-body{padding:8px var(--sp-lg) 96px}
.ct-body__grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:start}
@media (max-width:860px){.ct-body__grid{grid-template-columns:1fr}}

/* ── Conversational chat card ── */
.ct-chat-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);padding:0;overflow:hidden;display:flex;flex-direction:column;height:520px}
.ct-chat{display:flex;flex-direction:column;height:100%}
.ct-chat__messages{flex:1;overflow-y:auto;padding:28px;display:flex;flex-direction:column;gap:12px}
.ct-chat__row{display:flex}
.ct-chat__row--bot{justify-content:flex-start}
.ct-chat__row--user{justify-content:flex-end}
.ct-chat__bubble{max-width:78%;padding:12px 16px;border-radius:16px;font-size:.88rem;line-height:1.55}
.ct-chat__bubble--bot{background:var(--clr-bg);border:1px solid var(--clr-border);color:var(--clr-text-main);border-bottom-left-radius:4px}
.ct-chat__bubble--user{background:var(--clr-text-main);color:var(--inverse);border-bottom-right-radius:4px}
.ct-chat__input-row{display:flex;gap:10px;padding:16px;border-top:1px solid var(--clr-border);background:var(--clr-surface)}
.ct-chat__input{flex:1;padding:13px 16px;border-radius:999px;border:1px solid var(--clr-border);background:var(--clr-bg);color:var(--clr-text-main);font-size:.9rem;outline:none;font-family:inherit;transition:border-color .2s,box-shadow .2s}
.ct-chat__input:focus{border-color:var(--clr-primary);box-shadow:0 0 0 3px rgba(13,148,136,.12)}
.ct-chat__send{flex-shrink:0;width:44px;height:44px;border-radius:50%;border:none;background:var(--clr-text-main);color:var(--inverse);font-size:1.1rem;cursor:pointer;transition:background .2s}
.ct-chat__send:hover{background:var(--clr-primary)}
.ct-chat__choices{display:flex;flex-wrap:wrap;gap:8px;padding:16px;border-top:1px solid var(--clr-border);background:var(--clr-surface)}
.ct-chat__choice{padding:10px 16px;border-radius:999px;border:1px solid var(--clr-border);background:var(--clr-bg);color:var(--clr-text-main);font-size:.82rem;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s}
.ct-chat__choice:hover{border-color:var(--clr-primary);background:rgba(13,148,136,.08)}
.ct-chat__followup{display:flex;flex-wrap:wrap;gap:8px;max-width:78%}
.ct-chat__followup-btn{display:inline-flex;align-items:center;padding:10px 16px;border-radius:999px;border:1px solid var(--clr-border);background:var(--clr-bg);color:var(--clr-text-main);font-size:.8rem;font-weight:700;text-decoration:none;cursor:pointer;transition:border-color .2s,background .2s;font-family:inherit}
.ct-chat__followup-btn:hover{border-color:var(--clr-primary);background:rgba(13,148,136,.08)}
.ct-chat__followup-btn--primary{background:var(--clr-text-main);color:var(--inverse);border-color:var(--clr-text-main)}
.ct-chat__followup-btn--primary:hover{background:var(--clr-primary);border-color:var(--clr-primary);color:#fff}

/* ── Side info ── */
.ct-side{display:flex;flex-direction:column;gap:20px}
.ct-side__block{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-lg);padding:24px}
.ct-side__block h3{font-family:var(--font-title);font-size:.95rem;text-transform:none;color:var(--clr-text-main);margin:0 0 8px}
.ct-side__block p{font-size:.87rem;color:var(--clr-text-muted);line-height:1.6;margin:0}
.ct-side__block a{color:var(--clr-primary);font-weight:600;text-decoration:none}
.ct-side__block a:hover{text-decoration:underline}
.ct-side__quote{background:var(--navy);border-color:var(--navy)}
.ct-side__quote p{color:rgba(255,255,255,.85);font-size:.87rem;line-height:1.7;font-style:italic}
.ct-side__quote span{display:block;margin-top:12px;color:rgba(255,255,255,.5);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
