/* Palette follows the supplied gold logo. No image filters or recolouring. */
:root {
  --to-bg:#f4f1eb; --to-panel:#fffdf8; --to-panel-2:#f8f3e9; --to-panel-3:#eee4d1;
  --to-ink:#30291f; --to-muted:#6b6255; --to-dim:#817462;
  --to-camel:#8a6238; --to-camel-2:#a27b4c; --to-terra:#70502f; --to-clay:#c5a273;
  --to-on-accent:#fffdf8; --to-glow:#b58c5324; --to-warm:#eee5d3;
  --to-line:#9273481a; --to-line-2:#92734836; --to-shadow:#46371f26;
  --to-rim:linear-gradient(135deg,#fffffff2,#c5a27345 45%,#ffffffb3);
  --to-rim-hot:linear-gradient(135deg,#fff,#b18b55a6 50%,#ffffffd9);
  --to-glass:#ffffff61;
  --to-action-fill:#eeddbc; --to-action-ink:#51412c; --to-action-border:#d6bd95;
}
body::before { background:#c5a273; opacity:.14; }
body::after { background:#d7c8a8; opacity:.18; }
.to-brand-logo { display:none; }
.to-has-logo .to-brand-logo { display:block; object-fit:contain; mix-blend-mode:multiply; }
.to-has-logo .to-brand-original { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.to-logo.to-has-logo { position:relative; display:flex; align-items:center; flex:none; }
.to-logo .to-brand-logo { width:108px; height:98px; }
.to-brand-ready .to-top { min-height:118px; padding:8px 20px 8px 28px; background:#fcfaf5f2; border:1px solid #b6925d35; box-shadow:0 5px 22px #70502f05; }
.to-brand-ready .to-top::after { background:linear-gradient(90deg,#8a6238,#d8bb87,#8a6238); }
.to-brand-ready .to-rail { background:#fcfaf5df; border-color:#b6925d30; }
.to-brand-ready .to-rail__mark { display:none; }
.to-brand-ready .to-desk-story > .to-hero { top:144px; height:calc(100svh - 164px); min-height:560px; background:radial-gradient(ellipse at 70% 34%,#fffdf7,#eee9dd 82%); border-color:#b6925d30; }
.to-brand-ready .to-btn--solid,.to-brand-ready .to-pill--accent,.to-brand-ready .to-desk-active .to-btn,
.to-brand-ready.to-desk-active .to-hero__text .to-btn { background:linear-gradient(135deg,#f5e9d2,var(--to-action-fill)); color:var(--to-action-ink); border-color:var(--to-action-border) !important; box-shadow:inset 0 1px 0 #ffffffb3,0 4px 14px #b69a6920; text-shadow:none; }
.to-brand-ready .to-btn--solid:hover,.to-brand-ready .to-pill--accent:hover,.to-brand-ready.to-desk-active .to-hero__text .to-btn:hover { background:linear-gradient(135deg,#f0dfbf,#e7d2aa); box-shadow:inset 0 1px 0 #fff9,0 6px 18px #b69a6928; }
.to-brand-ready .to-lang a[aria-current],.to-brand-ready .to-filter button[aria-pressed="true"],.to-brand-ready .to-chip input:checked + span { background:var(--to-action-fill); color:var(--to-action-ink); box-shadow:inset 0 0 0 1px #d6bd9580,inset 0 1px 0 #fff9; }
.to-brand-ready .to-menu--primary a .to-icon { color:#84623d; background:#bda0710c; border-color:transparent; box-shadow:none; }
.to-brand-ready .to-icon .to-icon-accent { stroke:#b18b55; }
.to-brand-ready .to-icon .to-icon-seal { fill:#b18b55; stroke:#fcfaf5; }
.to-brand-ready .to-menu--primary a:hover,.to-brand-ready .to-menu--primary .current-menu-item > a { color:#70502f; background:#bda07114; }
.to-brand-ready .to-menu--primary .current-menu-item > a .to-icon { color:#70502f; background:#bda0711c; box-shadow:none; }
.to-brand-ready .to-desk-card-control[aria-pressed="true"] { background:var(--to-action-fill); color:var(--to-action-ink); box-shadow:inset 0 0 0 1px #d6bd9580; }
.to-brand-ready .to-desk-phases span.is-current,.to-brand-ready .to-desk-offer-link::after { color:#8a6238; }
.to-brand-ready .to-desk-phases span::after,.to-brand-ready .to-desk-progress { background:#b18b55; }
.to-brand-ready .to-desk-tool { color:#775630; background:#fffdf5e8; border-color:#b18b5524; }
.to-brand-ready :focus-visible { outline-color:#8a6238; }
.to-brand-ready .to-model__more { background:var(--to-action-fill); color:var(--to-action-ink); box-shadow:inset 0 0 0 1px #d6bd9580; }
.to-brand-ready .to-check input:checked { background:var(--to-action-fill); box-shadow:inset 0 0 0 1px var(--to-action-border); }
.to-brand-ready .to-check input:checked::after { border-color:var(--to-action-ink); }
.to-brand-ready .to-model--list li::before { box-shadow:none; }
.to-brand-ready .to-point__ico,.to-brand-ready .to-point__no { box-shadow:inset 0 1px 0 #fff; }
.to-brand-ready .to-stat b { text-shadow:none; }
.to-brand-ready .to-field:focus { box-shadow:0 0 0 3px #b18b551c; }
.to-brand-ready .to-points--steps .to-point h3 { font-size:clamp(22px,2vw,30px); overflow-wrap:break-word; }
.to-brand-ready .to-desk-phases { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; left:42%; }
.to-brand-ready .to-desk-phases span { white-space:normal; font-size:10px; line-height:1.4; }
.to-brand-ready .to-model__body h3 { overflow-wrap:break-word; }
@media (min-width:861px) and (max-width:1150px) {
  .to-brand-ready .to-desk-phases { left:43%; gap:8px; }
  .to-brand-ready .to-desk-phases span { font-size:9px; }
}
@media (max-width:860px) {
  html { scroll-padding-top:120px; }
  .to-brand-ready .to-top { min-height:96px; padding:7px 10px 7px 17px; border-radius:20px; }
  .to-logo .to-brand-logo { width:88px; height:80px; }
  .to-brand-ready .to-desk-story > .to-hero { top:0; height:auto; min-height:0; }
  .to-brand-ready .to-rail { background:#fcfaf5f5; }
  .to-brand-ready .to-menu--primary a .to-icon { background:none; }
  .to-brand-ready .to-desk-card-controls { background:#fffdf7e8; border-color:#b18b5525; }
  .to-brand-ready .to-desk-phases { display:none; }
  .to-brand-ready:not(.to-desk-active) .to-hero__text { order:0; min-width:0; }
  .to-brand-ready:not(.to-desk-active) .to-hero__media { order:1; min-width:0; }
  .to-brand-ready:not(.to-desk-active) .to-hero h1 { font-size:clamp(32px,8.8vw,46px); overflow-wrap:break-word; hyphens:auto; }
}

/* Keep editorial photos subordinate to the accompanying copy. */
body[data-photos] .to-about__grid { grid-template-columns:minmax(0,280px) minmax(0,1fr); max-width:1020px; margin-inline:auto; gap:clamp(32px,5vw,80px); }
body[data-photos] .to-about__img { width:100%; max-width:280px; justify-self:center; }
body[data-photos] .to-about__img img { display:block; width:100%; height:auto; }
body[data-photos] .to-photo-grid { max-width:900px; margin-inline:auto; }
@media (max-width:960px) {
  body[data-photos] .to-about__grid { grid-template-columns:1fr; gap:28px; }
  body[data-photos] .to-about__img { max-width:230px; }
}
@media (max-width:860px) {
  body[data-photos] .to-photo-item:nth-child(4) { width:100%; max-width:200px; justify-self:center; }
}
