/* Let's Talk page (/lets-talk). Loaded on that page only. One serif moment: the h1 highlight. */
.lt-main{padding-top:0;padding-bottom:0;}
.lt-main .wp-block-template-part > *,.lt-sec *{margin-block-start:0;}
.lt-sec{padding:clamp(48px,7vw,88px) 0 clamp(24px,3vw,40px);}
.lt-sec .sec-wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 var(--gutter);}
.lt-sec p{margin:0;}
[id]{scroll-margin-top:96px;}

/* 1 · Top */
.lt-top{padding-top:clamp(140px,16vw,190px);}
.lt-title{margin:0 auto;max-width:14ch;font-size:clamp(44px,7vw,92px);line-height:1;letter-spacing:-.035em;}
.lt-title em{color:var(--ember);}
.lt-lede{max-width:620px;margin:24px auto 0!important;font:400 19px/1.6 var(--sans);color:#3a3836;}
.lt-lede strong{font-weight:600;color:var(--ink);}

/* 2 · Three ways (whole card is the link) */
.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:clamp(40px,6vw,64px);}
@media (max-width:760px){.ways{grid-template-columns:1fr;}}
.way{position:relative;display:flex;flex-direction:column;gap:6px;padding:22px 22px 20px;border:1px solid #E4E1DD;border-radius:16px;transition:background .3s,color .3s,border-color .3s;}
.way:hover,.way:focus-within{background:var(--ink);color:#fff;border-color:var(--ink);}
.way.main{border:1.5px solid var(--ink);}
.way-k{font:600 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ash);transition:color .3s;}
.way.main .way-k{color:var(--ink);}
.way:hover .way-k,.way:focus-within .way-k{color:var(--muted);}
.way .way-title{margin:0;font-size:22px;line-height:1.2;letter-spacing:-.01em;}
.way-text{font:400 15px/1.5 var(--sans);color:#3a3836;transition:color .3s;}
.way:hover .way-text,.way:focus-within .way-text{color:rgba(255,255,255,.75);}
.way-go{margin-top:8px!important;font:600 14px var(--sans);}
.way-go a{color:inherit;}
.way-go a::after{content:"";position:absolute;inset:0;border-radius:16px;}
.way-go a:focus-visible{outline:none;}
.way:focus-within{outline:2px solid var(--ember);outline-offset:3px;}

/* 3 · Form card */
.form-card{max-width:820px;margin:0 auto;background:#ECEADC;border:1px solid #E4E1DD;border-radius:20px;padding:clamp(22px,4vw,44px);}
.form-card .form-title{margin:0 0 6px;font-size:clamp(28px,3.4vw,40px);line-height:1.1;}
.form-card .form-sub{margin:0 0 28px;font:400 15px var(--sans);color:#5E5A56;}
.form-card .form-small{margin-top:12px;font:400 13px var(--sans);color:#5E5A56;}
/* 4 · What happens next */
.sec-h{margin:0 0 clamp(28px,4vw,44px)!important;font-size:clamp(30px,3.8vw,46px);line-height:1.1;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);}
@media (max-width:760px){.steps{grid-template-columns:1fr;}}
.step{padding:26px 24px 10px 0;}
.step + .step{padding-left:24px;border-left:1px solid #E4E1DD;}
@media (max-width:760px){.step + .step{padding-left:0;border-left:0;border-top:1px solid #E4E1DD;}}
.step-n{font:700 48px/1 var(--head);letter-spacing:-.04em;}
.step .step-title{margin:14px 0 6px;font-size:22px;line-height:1.2;}
.step-text{font:400 15.5px/1.55 var(--sans);color:#3a3836;}

/* 5 · Quick answers */
.faq{max-width:820px;margin:0 auto;border-top:1px solid var(--ink);}
.faq .wp-block-details{border-bottom:1px solid #E4E1DD;margin:0;}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font:700 19px/1.3 var(--head);letter-spacing:-.01em;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";flex:none;width:32px;height:32px;border:1px solid rgba(20,20,20,.22);border-radius:50%;display:grid;place-items:center;font:400 18px/1 var(--sans);transition:transform .3s;}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq summary:focus-visible{outline:2px solid var(--ember);outline-offset:3px;}
.faq details p{margin:0 0 20px;font:400 16px/1.6 var(--sans);color:#3a3836;max-width:62ch;}

/* 6 · Not ready */
.lt-later{padding-bottom:clamp(64px,9vw,110px);}
.later-title{margin:0;font-size:clamp(28px,3.4vw,40px);line-height:1.1;}
.later-text{margin:12px auto 28px!important;max-width:520px;font:400 17px/1.6 var(--sans);color:#3a3836;}
.lt-ctas{gap:12px;}


/* After sending: the card becomes a big thank-you panel (form, title and small print hide) */
.form-card.is-sent > :not(.sent-panel){display:none!important;}
.sent-panel{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(32px,6vw,64px) 12px;outline:none;animation:incSentIn .5s ease both;}
.sent-icon{display:grid;place-items:center;width:88px;height:88px;border-radius:50%;background:var(--ember-btn);color:#fff;margin-bottom:24px;box-shadow:0 14px 30px -12px rgba(208,58,20,.6);}
.sent-body p{margin:0;font:400 18px/1.6 var(--sans);color:#3a3836;}
.sent-body p:first-child{margin-bottom:10px;font:700 clamp(32px,4.4vw,48px)/1.08 var(--head);letter-spacing:-.03em;color:var(--ink);}
.sent-again{margin-top:28px;padding:0;background:none;border:0;border-bottom:1px solid currentColor;font:600 14px var(--sans);color:var(--ember-text);cursor:pointer;}
@keyframes incSentIn{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.sent-panel{animation:none;}}

/* Paul QC (2026-10-23) */
/* phones: the two "Not ready" buttons stack full width instead of wrapping inside */
@media (max-width:640px){
  .lt-ctas{flex-direction:column;align-items:stretch;max-width:340px;margin-inline:auto;}
  .lt-ctas .wp-block-button,.lt-ctas .wp-element-button{width:100%;text-align:center;white-space:nowrap;}
}
/* phones: the three ways become hairline rows, not stacked boxes */
@media (max-width:760px){
  .ways{gap:0;border-top:1.5px solid var(--ink);}
  .way,.way.main{border:0;border-bottom:1px solid #E4E1DD;border-radius:0;padding:18px 0;}
  .way:hover,.way:focus-within{background:transparent;color:inherit;}
  .way:hover .way-text,.way:focus-within .way-text{color:#3a3836;}
  .way-go a::after{border-radius:0;}
}
/* contacts footer with the colour logo */
/* Sent: the form card turns dark so the thank-you stands out (Kai, 2026-10-23) */
.form-card.is-sent{background:var(--ink);border-color:var(--ink);color:#fff;}
.form-card.is-sent .sent-body p{color:rgba(255,255,255,.75);}
.form-card.is-sent .sent-body p:first-child{color:#fff;}
.form-card.is-sent .sent-again{color:#FF8A66;}
.form-card.is-sent .sent-icon{box-shadow:0 14px 30px -12px rgba(208,58,20,.8);}
