*{box-sizing:border-box}body{margin:0;background:#faf8f3;color:#28352d;font:16px/1.65 system-ui,sans-serif}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #a56545;outline-offset:5px}.draft{text-align:center;background:#29392f;color:white;padding:9px 18px;font-size:12px;letter-spacing:.08em}header{max-width:1180px;margin:auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d6d3c7}header img{width:145px;height:95px;object-fit:contain}nav{display:flex;gap:22px;font-size:14px}main{max-width:1180px;margin:auto;padding:45px 24px 70px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.15}h1{font-size:clamp(38px,6vw,64px);max-width:850px;margin:12px 0 22px}h2{font-size:34px}h3{font-size:27px;margin:12px 0}.eyebrow{font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:#806247}.lede{font-size:20px;max-width:770px;color:#596158}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:30px 0 55px}.card{background:#fffdf9;border:1px solid #dedbd0;padding:27px;display:flex;flex-direction:column}.card.featured{border:2px solid #536c55;background:#f0f2e9}.card p{margin:10px 0}.card ol{padding-left:20px;font-size:14px}.pricebox{margin-top:auto;padding-top:24px;border-top:1px solid #dedbd0}.price{font:38px Georgia,serif}.small{font-size:13px;color:#60675e}.button{display:inline-block;text-decoration:none;background:#a64f38;color:#fff;padding:13px 20px;border:0;font:inherit;cursor:pointer;margin-top:14px}.button:hover{background:#873e2b}.two{display:grid;grid-template-columns:1.5fr 1fr;gap:45px}.panel{padding:28px;background:#eeeee4;border:1px solid #dadccc;margin:24px 0}.steps{padding:0;list-style:none;counter-reset:step}.steps li{counter-increment:step;padding:18px 0 18px 54px;border-bottom:1px solid #ddd;position:relative}.steps li:before{content:counter(step);position:absolute;left:0;top:20px;font:26px Georgia;color:#8b6f50}.steps h3{font-size:23px;margin:0}.steps p{margin:9px 0}.deliverables li{margin:10px 0}.heroimg{width:100%;display:block;margin:18px 0}.tag{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#566846}.terms{border-top:1px solid #d6d3c7;padding-top:30px;margin-top:40px;max-width:900px}.terms details{padding:12px 0;border-bottom:1px solid #ddd}.terms summary{cursor:pointer;font-weight:600}footer{text-align:center;padding:30px;border-top:1px solid #ddd;font-size:13px}.selection{padding:24px;border:2px solid #536c55;background:#fffdf9}label{display:block;cursor:pointer}input{width:20px;height:20px;vertical-align:middle;margin-right:10px}dialog{max-width:520px;padding:30px;border:1px solid #536c55;background:#faf8f3}dialog::backdrop{background:#15221888}.back{font-size:14px} @media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr;gap:10px}}@media(max-width:560px){.grid{grid-template-columns:1fr}header{padding:12px 18px}header img{width:110px;height:75px}nav{gap:12px}main{padding:28px 18px}.panel,.card{padding:22px}}
nav {flex-wrap:wrap}
nav a[aria-current="page"] {font-weight:650}
.compare {overflow-x:auto; margin-block:1rem}
.compare table {border-collapse:collapse; width:100%; min-width:810px; font-size:.9rem; background:#fffdf9}
.compare th, .compare td {padding:12px; border-bottom:1px solid #dedbd0; vertical-align:top; text-align:left}
.compare thead {background:#eeeee4}
.compare tbody th {min-width:150px}
.compare-label {display:none}
.service-example {max-width:760px}
.service-example img {display:block; width:100%; max-height:470px; object-fit:contain; background:#fffdf9}
.service-site {background:var(--paper); color:var(--ink); font-family:var(--sans)}
.service-site .mast {max-width:none; margin:0; padding:1.15rem max(5vw,1rem)}
.service-site .mast .studio-logo {width:clamp(8.5rem,18vw,11.5rem);height:auto;object-fit:initial}
.service-site main {width:min(1100px,90vw);padding-inline:0}
.service-site main p {margin-block:.85em}
.service-site main li > p {margin-block:.5em}
.starting-choices {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:25px 0 45px}
.starting-choices a {display:grid;gap:4px;padding:17px;background:var(--card);border:1px solid var(--line);text-decoration:none}
.starting-choices a:hover strong {text-decoration:underline}
.starting-choices strong {font:1.3rem var(--serif);color:#834632}
.full-comparison {border-block:1px solid var(--line);padding:18px 0;margin:24px 0}
.full-comparison summary {cursor:pointer;font-size:1.15rem;font-weight:650}
.booking-demo {margin-top:20px}
@media(max-width:680px) {header {align-items:flex-start; flex-direction:column; gap:10px}}
@media(max-width:760px) {
  .compare {overflow:visible}
  .compare table, .compare tbody {display:block; min-width:0; background:transparent}
  .compare thead {position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%)}
  .compare tbody tr {display:block; background:#fffdf9; border:1px solid #dedbd0; margin-bottom:12px; padding:8px 14px}
  .compare tbody th {display:block; min-width:0; font-size:1.03rem; padding:9px 0}
  .compare tbody td {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.6fr); gap:8px; padding:7px 0}
  .compare tbody td:last-child {border:0}
  .compare-label {display:block; font-weight:600}
  .starting-choices {grid-template-columns:1fr}
}

.service-inquiry { margin-block: 1rem 1.5rem; }

.card-pricing .price {font-size: clamp(28px, 5vw, 34px); line-height: 1.1}
.card-pricing .small {margin: 3px 0 8px}
