/* ============================================================
   MindLynk — "The Doctrine" design system
   Source: Claude Design handoff (Direction A), June 2026
   Shared across index / services / about / contact
   ============================================================ */

:root{
  --paper:#F7F4ED; --paper2:#EFEAE0; --ink:#16140F; --ink2:#4A463C;
  --ink3:#8A8474; --rule:#D8D2C4; --signal:#9E2B12;
  --pad:clamp(24px, 5vw, 72px);
}
*{box-sizing:border-box;}
html, body{margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Archivo',sans-serif; background:var(--paper); color:var(--ink);
  -webkit-font-smoothing:antialiased; text-wrap:pretty;
}
::selection{background:var(--signal); color:var(--paper);}
.kicker{
  font-size:12px; letter-spacing:0.22em; text-transform:uppercase;
  font-weight:600; color:var(--ink3);
}
.kicker .no{color:var(--signal); margin-right:12px;}

/* ---- nav ---- */
.nav{
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  padding:26px var(--pad); border-bottom:1px solid var(--ink);
  position:sticky; top:0; background:var(--paper); z-index:50;
}
.brand{display:flex; align-items:center; gap:14px; text-decoration:none; color:var(--ink);}
.brand img{height:40px; width:auto; display:block;}
.wordmark{font-family:'Newsreader',serif; font-size:25px; font-weight:600; letter-spacing:0.01em;}
.wordmark sup{font-size:10px; color:var(--ink3); font-family:'Archivo',sans-serif; margin-left:6px; letter-spacing:0.12em;}
.nav-links{display:flex; gap:36px; align-items:baseline;}
.nav-links a{
  font-size:13px; letter-spacing:0.06em; text-transform:uppercase; font-weight:500;
  color:var(--ink2); text-decoration:none;
}
.nav-links a:hover{color:var(--ink);}
.nav-links a.active{color:var(--ink); border-bottom:2px solid var(--signal); padding-bottom:3px;}
.nav-cta{
  font-size:13px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
  color:var(--ink); text-decoration:none; border-bottom:2px solid var(--signal); padding-bottom:3px;
  white-space:nowrap;
}

/* ---- hero ---- */
.hero{padding:clamp(56px,7vw,96px) var(--pad) 0; border-bottom:1px solid var(--rule);}
.hero h1{
  font-family:'Newsreader',serif; font-weight:430; font-size:clamp(44px, 6.1vw, 88px); line-height:1.04;
  letter-spacing:-0.015em; margin:30px 0 0; max-width:1180px;
}
.hero h1 em{font-style:italic; color:var(--signal);}
.hero-row{
  display:flex; justify-content:space-between; align-items:flex-end; gap:60px;
  margin-top:clamp(36px,4.4vw,64px); padding-bottom:clamp(48px,5.5vw,80px); flex-wrap:wrap;
}
.hero-sub{
  font-family:'Newsreader',serif; font-size:clamp(19px,1.7vw,24px); line-height:1.5; color:var(--ink2);
  max-width:580px; font-weight:400; margin:0;
}
.hero-actions{display:flex; flex-direction:column; gap:18px; align-items:flex-start; flex-shrink:0;}
.btn{
  display:inline-block; background:var(--ink); color:var(--paper); text-decoration:none;
  font-size:14px; letter-spacing:0.08em; text-transform:uppercase; font-weight:600;
  padding:20px 36px; transition:background 0.15s ease;
  border:none; cursor:pointer; font-family:'Archivo',sans-serif;
}
.btn:hover{background:var(--signal);}
.btn.inverse{background:var(--paper); color:var(--ink);}
.btn.inverse:hover{background:var(--signal); color:var(--paper);}
.btn-note{font-size:15px; color:var(--ink3); font-style:italic; font-family:'Newsreader',serif;}
.textlink{
  font-size:13px; letter-spacing:0.06em; text-transform:uppercase; font-weight:600;
  color:var(--ink); text-decoration:none; border-bottom:2px solid var(--signal); padding-bottom:3px;
}
.figures{display:grid; grid-template-columns:repeat(4, 1fr); border-top:1px solid var(--ink);}
.figure{padding:36px 40px 42px 0; border-right:1px solid var(--rule);}
.figure:last-child{border-right:none;}
.figure + .figure{padding-left:40px;}
.figure .n{font-family:'Newsreader',serif; font-size:clamp(40px,4vw,58px); font-weight:420; letter-spacing:-0.02em; line-height:1;}
.figure .n em{font-style:italic; font-size:0.52em; color:var(--signal);}
.figure .d{font-size:13.5px; line-height:1.5; color:var(--ink2); margin-top:14px; max-width:220px;}

/* ---- problem strip ---- */
.problem{
  display:grid; grid-template-columns:300px 1fr; gap:clamp(32px,5vw,72px); padding:clamp(56px,5.5vw,80px) var(--pad);
  background:var(--ink); color:var(--paper);
}
.problem .kicker{color:#A39C8B;}
.problem-lead{
  font-family:'Newsreader',serif; font-size:clamp(28px,2.6vw,38px); line-height:1.32; font-weight:400; margin:0; max-width:880px;
}
.problem-lead em{font-style:italic; color:#E8B59F;}
.symptoms{list-style:none; margin:44px 0 0; padding:0; max-width:880px;}
.symptoms li{
  font-family:'Newsreader',serif; font-size:clamp(18px,1.55vw,22px); line-height:1.4; padding:18px 0;
  border-top:1px solid #3A372E; display:flex; gap:24px; align-items:baseline; color:#DDD7C9;
}
.symptoms li .rn{font-family:'Archivo',sans-serif; font-size:11px; letter-spacing:0.15em; color:#A39C8B;}

/* ---- sections shared ---- */
.section{padding:clamp(56px,6.1vw,88px) var(--pad); border-bottom:1px solid var(--rule);}
.h2{font-family:'Newsreader',serif; font-size:clamp(34px,3.6vw,52px); font-weight:450; margin:18px 0 0; letter-spacing:-0.01em; line-height:1.12;}
.h2 em{font-style:italic; color:var(--signal);}

/* ---- practices ---- */
.practices-grid{display:grid; grid-template-columns:1fr 1fr 1fr; gap:0; margin-top:56px; border-top:1px solid var(--ink);}
.practice{padding:44px 44px 52px 0; border-right:1px solid var(--rule);}
.practice + .practice{padding-left:44px;}
.practice:last-child{border-right:none; padding-right:0;}
.practice .domain{font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--signal); font-weight:600;}
.practice h3{
  font-family:'Newsreader',serif; font-size:clamp(25px,2.2vw,31px); font-weight:480; margin:18px 0 0; letter-spacing:-0.01em; line-height:1.15;
}
.practice p{font-size:15.5px; line-height:1.65; color:var(--ink2); margin:16px 0 0;}
.practice ul{list-style:none; margin:28px 0 0; padding:0;}
.practice li{
  font-family:'Newsreader',serif; font-size:17.5px; padding:12px 0; border-top:1px solid var(--rule);
  display:flex; gap:16px; align-items:baseline;
}
.practice li:last-child{border-bottom:1px solid var(--rule);}
.practice li .tick{font-family:'Archivo',sans-serif; font-size:11px; color:var(--ink3); letter-spacing:0.1em;}

/* ---- difference ---- */
.diff-grid{display:grid; grid-template-columns:1fr 480px; gap:clamp(40px,5.5vw,80px); align-items:end;}
.diff-sub{font-family:'Newsreader',serif; font-size:clamp(18px,1.5vw,21px); line-height:1.55; color:var(--ink2); margin:28px 0 0; max-width:600px;}
.ledger{border-top:1px solid var(--ink);}
.ledger-row{display:flex; justify-content:space-between; align-items:baseline; gap:24px; padding:20px 0; border-bottom:1px solid var(--rule);}
.ledger-row .m{
  font-family:'Newsreader',serif; font-size:23px; color:var(--ink3);
  text-decoration:line-through; text-decoration-color:var(--signal); text-decoration-thickness:1.5px;
}
.ledger-row .t{font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink3); font-weight:600; white-space:nowrap;}
.ledger-row.keep{border-bottom:1px solid var(--ink);}
.ledger-row.keep .m{color:var(--ink); text-decoration:none; font-size:27px;}
.ledger-row.keep .t{color:var(--signal);}
.ledger-note{font-size:14px; font-style:italic; font-family:'Newsreader',serif; color:var(--ink3); margin-top:16px;}

/* ---- ai difference ---- */
.ai-grid{display:grid; grid-template-columns:1fr 520px; gap:clamp(40px,5.5vw,80px); align-items:start;}
.hours-head{font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--signal); font-weight:600; padding-bottom:16px;}
.hours{list-style:none; margin:0; padding:0; border-top:1px solid var(--ink);}
.hours li{display:flex; gap:20px; align-items:baseline; padding:15px 0; border-bottom:1px solid var(--rule);}
.hours .rk{font-family:'Archivo',sans-serif; font-size:11px; letter-spacing:0.15em; color:var(--ink3); width:30px; flex-shrink:0;}
.hours .it{font-family:'Newsreader',serif; font-size:21px; color:var(--ink); flex-grow:1; line-height:1.3;}
.hours .hrs{font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink3); font-weight:600; white-space:nowrap;}
.hours-note{font-size:14px; font-style:italic; font-family:'Newsreader',serif; color:var(--ink3); margin-top:16px;}

/* ---- doctrine ---- */
.doctrine{background:var(--paper2);}
.tenets{display:grid; grid-template-columns:1fr 1fr 1fr; margin-top:64px; border-left:1px solid var(--ink);}
.tenet{border-right:1px solid var(--rule); padding:8px 40px 8px 32px;}
.tenet:last-child{border-right:1px solid var(--ink);}
.tenet .num{font-size:13px; letter-spacing:0.15em; color:var(--signal); font-weight:600;}
.tenet h4{font-family:'Newsreader',serif; font-size:29px; font-weight:480; margin:22px 0 0; line-height:1.2;}
.tenet p{font-size:15.5px; line-height:1.65; color:var(--ink2); margin:18px 0 0;}

/* ---- method ---- */
.method-grid{display:grid; grid-template-columns:300px 1fr; gap:clamp(32px,5vw,72px);}
.steps{display:flex; flex-direction:column;}
.step{display:grid; grid-template-columns:90px 320px 1fr; gap:40px; padding:34px 0; border-top:1px solid var(--ink); align-items:baseline;}
.step:last-child{border-bottom:1px solid var(--ink);}
.step .snum{font-family:'Newsreader',serif; font-size:30px; font-style:italic; color:var(--ink3);}
.step h5{font-size:14px; letter-spacing:0.14em; text-transform:uppercase; font-weight:700; margin:0;}
.step p{font-size:16px; line-height:1.6; color:var(--ink2); margin:0;}

/* ---- letter ---- */
.letter{display:grid; grid-template-columns:300px 1fr; gap:clamp(32px,5vw,72px); padding:clamp(60px,6.6vw,96px) var(--pad); border-bottom:1px solid var(--rule);}
.letter-body{max-width:760px;}
.letter-body p{font-family:'Newsreader',serif; font-size:clamp(20px,1.7vw,24px); line-height:1.55; margin:0 0 28px; color:var(--ink);}
.letter-body p:first-child::first-letter{
  font-size:74px; float:left; line-height:0.8; padding:8px 14px 0 0; color:var(--signal);
}
.sign{display:flex; align-items:center; gap:20px; margin-top:44px;}
.sign-name{font-family:'Newsreader',serif; font-size:21px; font-style:italic;}
.sign-role{font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink3); font-weight:600; margin-top:4px;}

/* ---- qualify / doors ---- */
.qualify{padding:clamp(64px,6.9vw,100px) var(--pad) clamp(72px,7.6vw,110px); text-align:center; background:var(--ink); color:var(--paper);}
.qualify .kicker{color:#A39C8B; display:inline-block;}
.qualify h2{
  font-family:'Newsreader',serif; font-size:clamp(38px,4.3vw,62px); font-weight:430; margin:28px auto 0;
  max-width:940px; line-height:1.12; letter-spacing:-0.01em;
}
.qualify h2 em{font-style:italic; color:#E8B59F;}
.doors{display:grid; grid-template-columns:1fr 1fr 1fr; gap:0; margin-top:clamp(44px,5vw,72px); border:1px solid #3A372E; text-align:left;}
.door{border-right:1px solid #3A372E; padding:40px 36px 44px; display:flex; flex-direction:column; align-items:flex-start;}
.door:last-child{border-right:none;}
.door .tmp{font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:#A39C8B; font-weight:600;}
.door h3{font-family:'Newsreader',serif; font-size:28px; font-weight:450; margin:20px 0 0; color:var(--paper); line-height:1.2;}
.door p{font-family:'Newsreader',serif; font-size:16.5px; line-height:1.55; color:#B8B1A0; margin:14px 0 0; flex-grow:1;}
.doorlink{
  margin-top:30px; font-size:13px; letter-spacing:0.08em; text-transform:uppercase; font-weight:600;
  color:var(--paper); text-decoration:none; border-bottom:2px solid #E8B59F; padding-bottom:3px;
  font-family:'Archivo',sans-serif;
}
.door.hot{background:var(--paper);}
.door.hot .tmp{color:var(--signal);}
.door.hot h3{color:var(--ink);}
.door.hot p{color:var(--ink2);}
.door.hot .btn{margin-top:30px;}
.doors-meta{font-family:'Newsreader',serif; font-size:17px; font-style:italic; color:#8E887A; margin-top:36px; display:block;}

/* ---- footer ---- */
.footer{display:flex; justify-content:space-between; align-items:center; gap:24px; padding:38px var(--pad) 44px; flex-wrap:wrap;}
.footer span{font-size:12.5px; letter-spacing:0.06em; color:var(--ink3);}
.footer-lockup{height:92px; width:auto; display:block;}

/* ============================================================
   Inner-page extensions (services / about / contact)
   Same vocabulary, no new colors or faces.
   ============================================================ */

/* ---- page header (inner pages) ---- */
.page-head{padding:clamp(48px,6vw,84px) var(--pad) clamp(44px,5.5vw,72px); border-bottom:1px solid var(--rule);}
.page-head h1{
  font-family:'Newsreader',serif; font-weight:430; font-size:clamp(40px,5.2vw,76px); line-height:1.06;
  letter-spacing:-0.015em; margin:26px 0 0; max-width:1080px;
}
.page-head h1 em{font-style:italic; color:var(--signal);}
.page-head .sub{
  font-family:'Newsreader',serif; font-size:clamp(18px,1.6vw,23px); line-height:1.5; color:var(--ink2);
  max-width:640px; font-weight:400; margin:26px 0 0;
}

/* ---- service dossier blocks (services page) ---- */
.svc{display:grid; grid-template-columns:300px 1fr; gap:clamp(32px,5vw,72px); padding:clamp(52px,5.8vw,84px) var(--pad); border-bottom:1px solid var(--rule);}
.svc-head .domain{font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--signal); font-weight:600; margin-top:18px;}
.svc-body h2{font-family:'Newsreader',serif; font-size:clamp(30px,3vw,44px); font-weight:450; margin:0; letter-spacing:-0.01em; line-height:1.12;}
.svc-body h2 em{font-style:italic; color:var(--signal);}
.svc-body > p{font-family:'Newsreader',serif; font-size:clamp(18px,1.5vw,21px); line-height:1.55; color:var(--ink2); margin:24px 0 0; max-width:720px;}
.svc-cols{display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,4vw,64px); margin-top:44px; align-items:start;}
.svc-list-head{font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--ink3); font-weight:600; padding-bottom:14px;}
.svc-list{list-style:none; margin:0; padding:0; border-top:1px solid var(--ink);}
.svc-list li{
  font-family:'Newsreader',serif; font-size:18px; line-height:1.4; padding:13px 0; border-bottom:1px solid var(--rule);
  display:flex; gap:16px; align-items:baseline;
}
.svc-list li .tick{font-family:'Archivo',sans-serif; font-size:11px; color:var(--ink3); letter-spacing:0.1em; flex-shrink:0;}
.svc-note{font-size:14px; font-style:italic; font-family:'Newsreader',serif; color:var(--ink3); margin-top:18px;}
.svc-act{margin-top:38px;}

/* ---- before / after (services page) ---- */
.compare-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,4vw,64px); margin-top:52px; align-items:start;}
.compare-head{font-size:12px; letter-spacing:0.2em; text-transform:uppercase; font-weight:600; padding-bottom:14px;}
.compare-head.before{color:var(--ink3);}
.compare-head.after{color:var(--signal);}
.compare-list{list-style:none; margin:0; padding:0; border-top:1px solid var(--ink);}
.compare-list li{
  font-family:'Newsreader',serif; font-size:18.5px; line-height:1.45; padding:14px 0; border-bottom:1px solid var(--rule);
  display:flex; gap:16px; align-items:baseline;
}
.compare-list li .rn{font-family:'Archivo',sans-serif; font-size:11px; letter-spacing:0.15em; color:var(--ink3); flex-shrink:0;}
.compare-list.muted li{color:var(--ink3); text-decoration:line-through; text-decoration-color:var(--signal); text-decoration-thickness:1px;}
.compare-list.muted li .rn{text-decoration:none;}

/* ---- prose / story (about page) ---- */
.prose{display:grid; grid-template-columns:300px 1fr; gap:clamp(32px,5vw,72px); padding:clamp(52px,6vw,88px) var(--pad); border-bottom:1px solid var(--rule);}
.prose-body{max-width:760px;}
.prose-body p{font-family:'Newsreader',serif; font-size:clamp(19px,1.6vw,23px); line-height:1.55; margin:0 0 26px; color:var(--ink);}
.prose-body p:last-child{margin-bottom:0;}
.prose-body strong{font-weight:600;}
.prose-body em{font-style:italic; color:var(--signal);}
.tenets.two-col{grid-template-columns:1fr 1fr;}
.tenets.two-col .tenet{padding:32px 40px 36px 32px; border-top:1px solid var(--rule);}
.tenets.two-col .tenet:nth-child(-n+2){border-top:none;}
.tenets.two-col .tenet:nth-child(even){border-right:1px solid var(--ink);}

/* ---- form (contact page) ---- */
.contact-grid{display:grid; grid-template-columns:minmax(0,640px) 1fr; gap:clamp(40px,6vw,96px); padding:clamp(52px,6vw,88px) var(--pad); border-bottom:1px solid var(--rule); align-items:start;}
.form-title{font-family:'Newsreader',serif; font-size:clamp(26px,2.4vw,34px); font-weight:450; margin:0; letter-spacing:-0.01em;}
.form-sub{font-family:'Newsreader',serif; font-size:17px; font-style:italic; color:var(--ink3); margin:12px 0 36px;}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
.form-group{display:flex; flex-direction:column; gap:8px; margin-bottom:22px;}
.form-group label{
  font-size:11px; font-weight:600; color:var(--ink2); text-transform:uppercase; letter-spacing:0.16em;
}
.form-group input, .form-group select, .form-group textarea{
  background:transparent; border:none; border-bottom:1px solid var(--ink);
  border-radius:0; padding:10px 2px 12px;
  color:var(--ink); font-family:'Newsreader',serif; font-size:19px; outline:none;
  transition:border-color 0.15s ease; appearance:none; -webkit-appearance:none;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus{border-bottom:2px solid var(--signal); padding-bottom:11px;}
.form-group input::placeholder, .form-group textarea::placeholder{color:var(--ink3); font-style:italic;}
.form-group textarea{resize:vertical; min-height:96px; line-height:1.5;}
.form-group select{
  background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%238A8474' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-repeat:no-repeat; background-position:right 2px center; background-size:1.1em; padding-right:32px;
  cursor:pointer;
}
.form-group select:invalid{color:var(--ink3); font-style:italic;}
.form-group select option{background:var(--paper); color:var(--ink); font-style:normal;}
.btn-submit{width:100%; margin-top:14px;}
.form-disclaimer{font-family:'Newsreader',serif; font-size:15px; font-style:italic; color:var(--ink3); text-align:center; margin-top:18px;}
.form-alert{border:1px solid var(--signal); padding:16px 20px; margin-bottom:26px;}
.form-alert p{font-size:14.5px; line-height:1.55; color:var(--signal); margin:0;}
.form-alert a{color:var(--signal);}
.form-done{text-align:center; padding:56px 16px;}
.form-done .mark{font-family:'Newsreader',serif; font-size:54px; line-height:1; color:var(--signal);}
.form-done h3{font-family:'Newsreader',serif; font-size:30px; font-weight:450; margin:22px 0 0;}
.form-done p{font-family:'Newsreader',serif; font-size:18px; line-height:1.6; color:var(--ink2); margin:16px auto 0; max-width:420px;}
.form-done .ref{font-size:12px; letter-spacing:0.12em; text-transform:uppercase; color:var(--ink3); margin-top:26px;}
.form-done .ref code{font-family:'Archivo',sans-serif; color:var(--signal); letter-spacing:0.06em;}

/* ---- contact sidebar ---- */
.side-block + .side-block{margin-top:56px;}
.side-head{font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--signal); font-weight:600; padding-bottom:18px;}
.side-steps .step{grid-template-columns:90px 1fr; gap:28px; padding:26px 0;}
.side-steps .step p{grid-column:2;}
.side-steps .step h5{margin-bottom:8px;}
.side-list{list-style:none; margin:0; padding:0; border-top:1px solid var(--ink);}
.side-list li{
  font-family:'Newsreader',serif; font-size:17.5px; line-height:1.45; padding:13px 0; border-bottom:1px solid var(--rule);
  display:flex; gap:16px; align-items:baseline; color:var(--ink2);
}
.side-list li .rn{font-family:'Archivo',sans-serif; font-size:11px; letter-spacing:0.15em; color:var(--ink3); flex-shrink:0;}
.side-note{font-family:'Newsreader',serif; font-size:18px; line-height:1.6; color:var(--ink2); margin:0;}
.side-note a{color:var(--ink); text-decoration:none; border-bottom:2px solid var(--signal); padding-bottom:2px;}

/* ---- responsive (design) ---- */
@media (max-width: 1180px){
  .nav{flex-wrap:wrap; row-gap:14px;}
  .nav-links{gap:24px;}
  .wordmark sup{display:none;}
}
@media (max-width: 1100px){
  .figures{grid-template-columns:1fr 1fr;}
  .figure{padding-left:0 !important; padding-right:32px; border-right:none;}
  .figure:nth-child(odd){border-right:1px solid var(--rule);}
  .figure:nth-child(even){padding-left:32px !important;}
  .figure:nth-child(n+3){border-top:1px solid var(--rule);}
  .practices-grid{grid-template-columns:1fr;}
  .practice{border-right:none; padding:36px 0 !important; border-top:1px solid var(--rule);}
  .practice:first-child{border-top:none;}
  .diff-grid, .ai-grid{grid-template-columns:1fr; align-items:start;}
  .tenets{grid-template-columns:1fr; border-left:none; border-top:1px solid var(--ink);}
  .tenet{border-right:none !important; padding:28px 0;}
  .method-grid, .letter, .problem{grid-template-columns:1fr;}
  .step{grid-template-columns:70px 1fr; gap:20px;}
  .step p{grid-column:1 / -1;}
  .doors{grid-template-columns:1fr;}
  .door{border-right:none; border-bottom:1px solid #3A372E;}
  .door:last-child{border-bottom:none;}
}
@media (max-width: 960px){
  .nav-links{display:none;}
}
@media (max-width: 760px){
  .hero-row{flex-direction:column; align-items:flex-start;}
}

/* ---- responsive (inner-page extensions) ---- */
@media (max-width: 1100px){
  .svc, .prose, .contact-grid{grid-template-columns:1fr;}
  .tenets.two-col{grid-template-columns:1fr;}
  .tenets.two-col .tenet{border-right:none !important; border-top:1px solid var(--rule); padding:28px 0;}
  .tenets.two-col .tenet:first-child{border-top:none;}
  .side-steps .step p{grid-column:1 / -1;}
}
@media (max-width: 860px){
  .svc-cols, .compare-grid{grid-template-columns:1fr;}
}
@media (max-width: 560px){
  .form-row{grid-template-columns:1fr;}
}
