/* Solence inner pages: shared components on top of home.css (one look across the site) */

/* accessibility: stronger focus ring, bigger footer tap targets */
body.home :focus-visible{outline:3px solid var(--ink);outline-offset:3px}
body.home .site-foot :focus-visible{outline-color:var(--sun)}
body.home .foot-grid li{margin-bottom:2px}
body.home .foot-grid li a{display:inline-block;padding:7px 0}
body.home .site-foot .credit{padding-top:7px;font-size:.82rem;color:#8B998C}

/* eyebrow tag */
.eyebrow{display:inline-block;margin:0 0 18px !important;font-size:.95rem;font-weight:600;letter-spacing:.02em;color:var(--ink);
  padding:3px 8px;margin-left:-8px !important;background:var(--sun-soft);text-transform:none;font-family:var(--face)}

/* page hero without the starter form */
.dawn--page{align-items:center}
.dawn--page .dawn__title{max-width:15ch}
.dawn__btns{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center}
.dawn--page .dawn__arch{aspect-ratio:1.1;max-height:560px}
.dawn--short .dawn__arch{aspect-ratio:1.35;max-height:440px}

/* island / feature split */
.isle{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,5vw,88px);align-items:center;
  max-width:1380px;margin:0 auto;padding:clamp(72px,8vw,120px) var(--gut);border-top:1px solid var(--rule)}
.isle--flip{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
.isle--flip .isle__arch{order:2}
.isle__arch{height:min(72dvh,600px);min-height:420px}
.isle__arch img{object-position:var(--pos,50% 50%)}
.isle__copy>p{font-size:1.15rem;color:var(--ink-2)}
.isle .ledger{margin-top:30px}

/* two column text + list */
.gp{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(32px,5vw,88px);align-items:start;
  max-width:1380px;margin:0 auto;padding:clamp(72px,8vw,120px) var(--gut);border-top:1px solid var(--rule)}
.gp__copy p{font-size:1.1rem;color:var(--ink-2)}
.gp__list h3{font-family:var(--face);font-weight:600;font-variation-settings:"FLAR" 100,"VOLM" 20;font-size:1.3rem;margin:0 0 14px}
.gp__list h3+.ticks{margin-bottom:34px}

/* tinted band */
.eu{background:var(--lime-2)}
.eu__in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,88px);align-items:start;
  max-width:1380px;margin:0 auto;padding:clamp(72px,8vw,112px) var(--gut)}
.eu__copy p{color:var(--ink-2);font-size:1.08rem}
.eu__small{font-size:.95rem !important;border-top:1px solid var(--rule);padding-top:18px;margin-top:8px}

/* short note */
.pros{max-width:820px;margin:0 auto;padding:clamp(56px,6vw,88px) var(--gut);border-top:1px solid var(--rule)}
.pros p{color:var(--ink-2)}
.pros__links{display:flex;flex-wrap:wrap;gap:12px 28px}

/* photo gallery */
.tour{max-width:1380px;margin:0 auto;padding:clamp(56px,7vw,104px) var(--gut);border-top:1px solid var(--rule)}
.tour__head{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:32px;align-items:end;margin-bottom:32px}
.tour__head .h2{margin:0;max-width:22ch}
.tour__head p{color:var(--ink-2);margin:0}
.tour__grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-template-rows:repeat(2,clamp(200px,20vw,300px));gap:14px}
.tour__grid figure{height:100%}
.tour__grid figure:first-child{grid-row:span 2}
.tour__grid img{object-position:var(--pos,50% 50%)}

/* three facts in a row */
.trio{max-width:1380px;margin:0 auto;padding:clamp(40px,5vw,72px) var(--gut);display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,44px)}
.trio div{border-top:3px solid var(--sun);padding-top:18px}
.trio dt{font-weight:600;font-variation-settings:"FLAR" 100,"VOLM" 20;font-size:1.25rem;margin-bottom:8px}
.trio dd{margin:0;color:var(--ink-2);font-size:1.02rem}

/* two pictured cards */
.duo{max-width:1380px;margin:0 auto;padding:clamp(72px,8vw,120px) var(--gut);border-top:1px solid var(--rule)}
.duo__head{max-width:760px;margin-bottom:36px}
.duo__head p{color:var(--ink-2)}
.duo__pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,44px)}
.duo__card .arch{height:clamp(240px,26vw,380px);margin-bottom:24px}
.duo__card .arch img{object-position:var(--pos,50% 40%)}
.duo__card p{color:var(--ink-2)}

/* numbered steps */
.steps2{list-style:none;margin:0;padding:0;counter-reset:st;display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(18px,2.2vw,32px);border-top:1px solid var(--ink);padding-top:24px}
.steps2 li{counter-increment:st}
.steps2 li::before{content:counter(st);display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;
  background:var(--sun);color:var(--ink);font-weight:600;margin-bottom:16px}
.steps2 h3{font-family:var(--face);font-weight:600;font-variation-settings:"FLAR" 100,"VOLM" 20;font-size:1.15rem;line-height:1.25;margin:0 0 8px}
.steps2 p{color:var(--ink-2);font-size:1rem}
.block{max-width:1380px;margin:0 auto;padding:clamp(72px,8vw,120px) var(--gut);border-top:1px solid var(--rule)}
.block>.h2{max-width:24ch}

/* dark band of cards (reuses doors) */
.door--plain{border-radius:3px;padding:clamp(32px,4vw,48px)}
.door--plain:hover{border-color:rgba(240,239,234,.32);background:transparent}

/* plain cross list */
.crosses{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.crosses li{padding:14px 0 14px 30px;border-bottom:1px solid var(--rule);position:relative;color:var(--ink-2);font-size:1.05rem}
.crosses li::before{content:"";position:absolute;left:2px;top:24px;width:12px;height:2px;background:var(--ink-2)}

/* founder */
.founder{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,5vw,88px);align-items:start;
  max-width:1380px;margin:0 auto;padding:clamp(72px,8vw,120px) var(--gut);border-top:1px solid var(--rule)}
.founder__copy p{color:var(--ink-2);font-size:1.08rem}
.founder__copy .lead1{font-size:1.25rem;color:var(--ink)}
.creds{background:var(--lime-2);padding:clamp(24px,3vw,36px);border-radius:3px}
.creds h3{font-family:var(--face);font-weight:600;font-size:1.2rem;margin:0 0 14px}
.creds ul{list-style:none;margin:0;padding:0}
.creds li{padding:10px 0;border-bottom:1px solid var(--rule);color:var(--ink-2);font-size:1rem}
.creds li:last-child{border-bottom:0}

/* enquiry form */
.ask-wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,5vw,80px);align-items:start;
  max-width:1380px;margin:0 auto;padding:clamp(48px,6vw,88px) var(--gut) clamp(72px,8vw,120px)}
body.home form.enq{display:grid;gap:20px;max-width:none}
body.home .field{display:flex;flex-direction:column;gap:8px}
body.home .field label{font-family:var(--face);font-size:1rem;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink)}
body.home .field input,body.home .field select,body.home .field textarea{font-family:var(--face);font-size:1.0625rem;color:var(--ink);
  background:#fff;border:1px solid var(--ink-2);border-radius:2px;padding:14px 16px;width:100%;min-height:52px}
body.home .field textarea{min-height:170px;resize:vertical}
body.home .field input:focus,body.home .field select:focus,body.home .field textarea:focus{outline:3px solid var(--sun);outline-offset:1px;border-color:var(--ink)}
body.home .f2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
body.home .hp{position:absolute;left:-9999px}
.form-note{font-size:.95rem;color:var(--ink-2);margin:14px 0 0 !important}
.side{display:grid;gap:28px}
.side__box{border-top:1px solid var(--ink);padding-top:22px}
.side__box h2{font-family:var(--face);font-weight:600;font-variation-settings:"FLAR" 100,"VOLM" 20;font-size:1.3rem;margin:0 0 12px}
.side__box p{color:var(--ink-2)}

/* responsive */
@media (max-width:1100px){
  .steps2{grid-template-columns:1fr 1fr;row-gap:32px}
}
@media (max-width:959px){
  .isle,.isle--flip,.gp,.eu__in,.founder,.ask-wrap{grid-template-columns:1fr}
  .isle__arch{height:auto;aspect-ratio:4/3;min-height:0}
  .isle--flip .isle__arch{order:0}
  .tour__head{grid-template-columns:1fr}
  .tour__grid{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:auto;gap:10px}
  .tour__grid figure{height:auto;aspect-ratio:1}
  .tour__grid figure:first-child{grid-column:span 2;grid-row:auto;aspect-ratio:4/3}
  .trio{grid-template-columns:1fr}
  .duo__pair{grid-template-columns:1fr}
  .dawn--page .dawn__lead{order:3}
  .dawn--page .dawn__btns{order:4}
  .dawn--page .eyebrow{order:0}
}
@media (max-width:640px){
  .tour figcaption{font-size:.8rem;padding:28px 10px 10px}
  .steps2{grid-template-columns:1fr}
  body.home .f2{grid-template-columns:1fr}
  .dawn__btns{flex-direction:column;align-items:stretch}
  .dawn__btns .line-link{text-align:center}
  .dawn--page .dawn__arch,.dawn--short .dawn__arch{aspect-ratio:5/4}
}

/* chat launcher: stay out of the way of the first screen on phones */
@media (max-width:640px){
  .chat-launcher{right:14px;bottom:14px;transition:opacity .25s ease,transform .25s ease}
  .chat-launcher .av{width:44px;height:44px}
  .chat-launcher.is-wait{opacity:0;pointer-events:none;transform:translateY(12px)}
}

.dawn .eyebrow{justify-self:start;align-self:start;width:auto}
