/* audit-v18.css */
@font-face{font-family:Instrument;src:url('assets/fonts/instrument-sans-normal-latin-345453b756.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:Anton;src:url('assets/fonts/anton-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font:16px/1.7 Instrument,Arial,sans-serif;background:#f5f6f2;color:#171c19}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Anton,'Arial Narrow',Arial,sans-serif;font-weight:400;text-transform:uppercase;line-height:1.15;letter-spacing:0}h3{font-size:20px;line-height:1.35;font-weight:600;letter-spacing:-.02em}a:focus-visible,summary:focus-visible{outline:3px solid #d86b24;outline-offset:5px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:12px}.skip-link:focus{top:12px}.audit-page .presentation-bar{position:sticky;top:0;z-index:20;border-bottom:1px solid #e0e4dc}.audit-container{width:min(1140px,88%);margin-inline:auto}.audit-lead{padding:70px 0 64px;display:grid;grid-template-columns:1.2fr .8fr;gap:76px;align-items:center}.audit-lead h1{font-size:clamp(38px,4.1vw,58px);max-width:620px}.audit-lead .accent{color:#b75016}.audit-lead p{font-size:18px;line-height:1.7;color:#596258;margin-top:25px;max-width:570px}.audit-lead figure{position:relative;border-radius:18px;overflow:hidden}.audit-lead figure img{height:410px;object-fit:cover;object-position:48% center}.audit-lead figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000b);color:#fff;font-size:12px;padding:50px 20px 17px}.audit-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:28px}.audit-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 23px;border-radius:999px;background:#171c19;color:#fff;font-size:14px;font-weight:550;transition:background .2s}.audit-button:hover{background:#3a443c}.audit-link{display:inline-flex;align-items:center;min-height:44px;border-bottom:1px solid currentColor;font-size:14px;font-weight:550}.audit-link:hover{color:#a44712}.audit-contents{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #cfd5cb;border-bottom:1px solid #cfd5cb;padding:17px 0;gap:24px}.audit-contents p{font-size:13px;color:#677062}.audit-contents nav{display:flex;gap:28px}.audit-contents a{font-size:14px;font-weight:550;padding:8px 0}.audit-contents a:hover{text-decoration:underline;text-underline-offset:5px}.audit-section{padding:76px 0}.audit-section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:65px;margin-bottom:35px}.audit-section h2{font-size:clamp(30px,3vw,43px);max-width:570px}.audit-section-heading>p{font-size:16px;line-height:1.75;color:#596258}.comparison{padding:32px 0 36px;border-top:1px solid #d4dacd}.comparison-title{display:flex;align-items:baseline;justify-content:space-between;gap:28px;margin-bottom:23px}.comparison-title a{font-size:13px;flex:none;text-decoration:underline;text-underline-offset:5px}.comparison-columns{display:grid;grid-template-columns:1fr 1fr;gap:65px}.comparison-columns h4{font-size:12px;font-weight:650;letter-spacing:.035em;margin:0 0 10px;color:#697164}.comparison-columns p{font-size:15px;line-height:1.8;color:#4c564b;max-width:500px}.comparison-columns>div:last-child{border-left:2px solid #dc7e43;padding-left:28px}.comparison-columns>div:last-child h4{color:#964411}.comparison-value{font-size:14px;line-height:1.65;margin-top:22px;color:#1b251b}.comparison-value strong{font-weight:650}.capability-note{padding:38px 0 0;border-top:1px solid #cfd5cb;display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.capability-note p{font-size:15px;line-height:1.8;color:#4c564b}.capability-note h3{font-size:22px;max-width:320px}.audit-seo{background:#17201d;color:#f5f6f2;padding:76px 0 80px}.audit-seo .audit-section-heading>p{color:#bbc5ba}.seo-findings{margin:0 0 50px}.seo-findings h3{font-size:20px;margin-bottom:7px}.seo-date{font-size:12px;color:#b5beb3;margin-bottom:20px}.seo-finding{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;padding:20px 0;border-top:1px solid #ffffff20;font-size:15px;line-height:1.75}.seo-finding p:first-child{font-weight:550}.seo-finding p:last-child{color:#bdc7bb}.seo-plan{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:32px}.seo-plan article{border-top:2px solid #cc8050;padding-top:23px}.seo-plan h3{font-size:19px;margin-bottom:14px;color:#fff}.seo-plan p{font-size:15px;line-height:1.8;color:#bec8bc}.seo-note{margin-top:35px;font-size:13px;line-height:1.8;color:#b2bfae;max-width:920px}.audit-seo a{text-decoration:underline;text-underline-offset:4px}.seo-result{font-size:clamp(22px,2.5vw,32px);line-height:1.4;letter-spacing:-.025em;max-width:870px;margin-top:46px;color:#f5f6ef}.audit-next{padding:76px 0 65px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.audit-next h2{font-size:clamp(32px,3.5vw,47px);max-width:500px}.audit-next p{margin-top:20px;color:#596258;font-size:16px;line-height:1.75}.launch-scope{border-top:1px solid #cfd5cb;padding-top:21px}.launch-scope h3{font-size:19px;margin-bottom:12px}.launch-scope p{font-size:14px;margin-top:10px}.audit-source{border-top:1px solid #cfd5cb;padding:25px 0 35px;color:#697163;font-size:12px;line-height:1.8}.audit-source a{text-decoration:underline;text-underline-offset:3px}.audit-source p+p{margin-top:10px}.audit-source strong{color:#394136}.audit-button-orange{background:#f47e31;color:#111}.audit-button-orange:hover{background:#e96e21}
@media(max-width:900px){.audit-lead{gap:35px;padding-top:48px}.audit-lead h1{font-size:42px}.audit-lead figure img{height:350px}.audit-lead p{font-size:16px}.audit-section-heading,.comparison-columns,.capability-note{gap:35px}.seo-plan{gap:22px}.audit-next{gap:35px}.audit-contents{align-items:flex-start;flex-direction:column;gap:4px}.audit-contents nav{gap:24px}}
@media(max-width:650px){html{scroll-padding-top:110px}.audit-container{width:88%}.audit-lead{grid-template-columns:1fr;gap:30px;padding:37px 0 34px}.audit-lead h1{font-size:36px;max-width:450px}.audit-lead p{font-size:15px;line-height:1.75;margin-top:22px}.audit-lead figure img{height:220px}.audit-lead figcaption{font-size:11px}.audit-actions{gap:18px;margin-top:24px}.audit-button{font-size:13px;padding-inline:19px}.audit-link{font-size:13px}.audit-contents{padding:13px 0}.audit-contents p{font-size:11px}.audit-contents nav{gap:16px;justify-content:space-between;width:100%;flex-wrap:wrap}.audit-contents a{font-size:12px}.audit-section{padding:44px 0}.audit-section-heading{grid-template-columns:1fr;gap:18px;margin-bottom:27px}.audit-section h2{font-size:32px}.audit-section-heading>p{font-size:15px}.comparison{padding:26px 0 28px}.comparison-title{display:block;margin-bottom:22px}.comparison-title h3{font-size:19px;max-width:320px}.comparison-title a{display:inline-block;min-height:40px;padding-top:10px;font-size:12px}.comparison-columns{grid-template-columns:1fr;gap:23px}.comparison-columns p{font-size:14px;line-height:1.8}.comparison-columns>div:last-child{padding-left:18px}.comparison-columns h4{font-size:11px}.comparison-value{font-size:13px;margin-top:20px}.capability-note{grid-template-columns:1fr;gap:17px;padding-top:28px}.capability-note h3{font-size:21px;max-width:none}.capability-note p{font-size:14px}.audit-seo{padding:44px 0 46px}.seo-finding{grid-template-columns:1fr;gap:8px;padding:18px 0;font-size:14px}.seo-findings{margin-bottom:30px}.seo-findings h3{font-size:18px}.seo-date{font-size:11px}.seo-plan{grid-template-columns:1fr;gap:25px}.seo-plan article{padding-top:17px}.seo-plan h3{font-size:18px;margin-bottom:10px}.seo-plan p{font-size:14px}.seo-note{font-size:12px;margin-top:27px}.seo-result{font-size:25px;margin-top:32px}.audit-next{grid-template-columns:1fr;gap:32px;padding:45px 0}.audit-next h2{font-size:33px}.audit-next p{font-size:15px}.launch-scope p{font-size:13px}.audit-source{font-size:11px;padding-bottom:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* presentation-v19.css */
/* Client presentation controls are separate from DNC's website navigation. */
.presentation-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:78px;padding:12px 32px;background:#f5f6f2;color:#202521;font-family:Instrument,Arial,sans-serif}
.presentation-brand{display:flex;flex-direction:column;gap:1px;flex:none;text-decoration:none}
.presentation-brand a{font-size:15px;font-weight:650;letter-spacing:-.02em}
.presentation-brand span{font-size:11px;color:#6a706a}
.presentation-nav{display:flex;align-items:center;gap:6px;border-bottom:1px solid #d9ded5}
.presentation-nav a{display:flex;justify-content:center;align-items:center;min-height:44px;padding:10px 18px;margin-bottom:-1px;border-bottom:2px solid transparent;font-size:13px;line-height:1.3;text-align:center;font-weight:500;transition:color .2s,border-color .2s}
.presentation-nav a:hover{color:#a34913;border-color:#b8bdb5}
.presentation-nav a[aria-current=page]{color:#141817;border-color:#141817;font-weight:650}
.presentation-nav a:last-child:not([aria-current]){font-weight:650}
.hero{height:calc(100svh - 148px);min-height:660px;max-height:950px}
.hero-content{padding:190px 5% 135px}
.client-strip{background:#fff;padding:7px 26px 9px;border-bottom:1px solid #e2e5de}
.client-strip-heading p{color:#5a625c;font-size:11px;letter-spacing:.025em}
.logo-window{background:#fff}
.client-strip .client-logo img{filter:none;mix-blend-mode:normal;opacity:1}
.client-logo-chester-ella img,.client-logo-runaway-bay img{clip-path:none}
.client-logo-chester-ella img{width:calc(175px * var(--client-scale,1))}
.client-logo-runaway-bay img{width:calc(125px * var(--client-scale,1));max-height:47px}
@media(max-width:800px){
 .presentation-bar{padding:12px 20px;gap:14px;min-height:78px}
 .presentation-nav a{font-size:12px;padding:10px 12px}
 .hero{height:calc(100svh - 148px);min-height:650px;max-height:850px}
 .hero-content{padding:215px 6% 125px}
 .client-strip{padding-inline:18px}
}
@media(max-width:600px){
 .presentation-bar{flex-direction:column;align-items:stretch;gap:8px;padding:10px 14px 0;min-height:85px}
 .presentation-brand{flex-direction:row;align-items:baseline;justify-content:space-between;gap:8px}
 .presentation-brand a{font-size:13px}
 .presentation-brand span{font-size:10px}
 .presentation-nav{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:0}
 .presentation-nav a{font-size:11px;padding:9px 5px;min-height:50px;align-self:stretch}
}
@media(max-width:480px){
 .hero{min-height:615px;height:calc(100svh - 146px);max-height:790px}
 .hero-content{padding:205px 18px 100px}
 .client-strip{padding:6px 0 8px}
}
@media(max-width:360px){.hero{min-height:595px}.hero-content{padding-top:190px}}


/* The studio link belongs to the review bar, above DNC's own navigation. */
.presentation-brand a {
  align-self: flex-start;
  color: inherit;
  text-decoration: none;
}
.presentation-brand a:hover {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.hero-enquiry {
  background: #fbfbf6;
  color: #151718;
  border-color: #fbfbf6;
}
.hero-enquiry:hover {
  background: #e8e9e1;
  border-color: #e8e9e1;
  color: #151718;
}
.hero :focus-visible {
  outline-color: white;
}

.maintenance-points h3 {
  font: 400 clamp(1.3rem, 1.7vw, 1.55rem)/1.18 var(--display);
  text-transform: uppercase;
  letter-spacing: 0.005em;
  margin: 0 0 0.48em;
}
.maintenance-point {
  grid-template-columns: 1.65rem minmax(0, 1fr);
  column-gap: clamp(0.85rem, 1.2vw, 1.1rem);
}
.capability-icon {
  width: 1.65rem;
  height: 1.65rem;
  margin: 0;
}
.maintenance-points p {
  max-width: 56ch;
}
@media (max-width: 480px) {
  .maintenance-point {
    grid-template-columns: 1.45rem minmax(0, 1fr);
    row-gap: 0.45rem;
    padding-block: 1.25rem;
  }
  .capability-icon {
    width: 1.45rem;
    height: 1.45rem;
    align-self: center;
  }
  .maintenance-points h3 {
    font-size: 1.3rem;
    margin: 0;
  }
  .maintenance-points p {
    grid-column: 2;
    font-size: 0.9375rem;
    line-height: 1.58;
  }
}
@media (pointer: coarse), (max-width: 800px) {
  .hero-dots button {
    width: 44px;
    min-height: 44px;
  }
}

/* studio-proposal.css */
/* Hey Callie's client proposal uses the same type and surfaces as its trades packages. */
.audit-page {
  --paper: #f3f4ed;
  --charcoal: #20251e;
  --lime: #d4ef76;
  --secondary: #606958;
  --gutter: clamp(22px, 5vw, 80px);
  color: var(--charcoal);
  background: var(--paper);
}
.audit-page h1, .audit-page h2 {
  font-family: Instrument, Arial, sans-serif;
  font-weight: 600;
  letter-spacing: -.045em;
  text-transform: none;
  line-height: 1.15;
}
.audit-lead .proposal-byline {
  margin: 0 0 18px;
  color: var(--secondary);
  font-size: .8125rem;
  font-weight: 600;
}
.audit-lead h1 { max-width: 15ch; }
.audit-section-heading h2 { max-width: 17ch; }
.audit-page .audit-button { background: var(--charcoal); color: var(--paper); }
.audit-page .audit-button:hover { background: #35402c; }
.comparison-columns > div:last-child { border-color: #738263; }
.comparison-columns > div:last-child h4 { color: #43523c; }
.audit-seo { background: var(--charcoal); }
.seo-plan article { border-color: var(--lime); }
.audit-page :focus-visible { outline-color: #586a37; }
.audit-seo :focus-visible { outline-color: var(--lime); }

.pricing {
  padding-bottom: clamp(40px, 6vw, 80px);
  font-family: Instrument, Arial, sans-serif;
  line-height: normal;
}
.pricing-shell {
  width: min(1180px, calc(100% - 2 * var(--gutter)));
  margin-inline: auto;
  padding-top: clamp(44px, 5vw, 68px);
}
.pricing-intro {
  display: grid;
  justify-items: center;
  gap: 12px;
  margin: 0 0 48px;
  text-align: center;
}
.pricing-intro h2 { font-size: clamp(1.25rem, 4.7vw, 3.5rem); color: #232321; }
.pricing-intro p {
  max-width: 48ch;
  font-size: 1rem;
  line-height: 1.65;
  letter-spacing: -.01em;
  color: var(--secondary);
}
.price-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(26px, 3vw, 36px);
}
.price-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: #fafbf6;
  border: 1px solid #20251e29;
  border-radius: 16px;
  box-shadow: 0 14px 40px -30px #20251e42;
}
.package-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(12px, 2vw, 22px);
  padding: 30px 26px 24px;
  background: var(--charcoal);
  color: #f4f1eb;
  border-radius: 15px 15px 0 0;
}
.package-top h3 {
  margin: 0 0 7px;
  font-size: clamp(1.65rem, 2.3vw, 2.1rem);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -.04em;
}
.price-label { font-size: .875rem; line-height: 1.5; color: #c9c6bf; }
.package-price { display: flex; flex-direction: column; align-items: flex-end; justify-self: end; }
.price { font-size: clamp(2rem, 2.7vw, 2.5rem); line-height: 1.12; letter-spacing: -.04em; white-space: nowrap; }
.package-total { margin-top: 6px; color: #c9c6bf; font-size: .75rem; line-height: 1.45; }
.package-body { display: flex; flex-direction: column; flex: 1; padding: 24px 26px 26px; }
.price-note { max-width: 43ch; font-size: .9375rem; line-height: 1.6; letter-spacing: -.01em; color: var(--secondary); }
.price-list, .inclusions-content { list-style: none; padding: 0; }
.price-list { margin: 16px 0 22px; }
.price-list li, .inclusions-content li { position: relative; padding-left: 24px; color: #34342f; }
.price-list li { padding-block: 6px; font-size: .875rem; line-height: 1.6; }
.price-list li::before, .inclusions-content li::before {
  content: "✓";
  content: "✓" / "";
  position: absolute;
  left: 0;
  color: #56594d;
  font: .8rem/1.5 Arial, sans-serif;
}
.price-list li::before { top: 7px; }
.package-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  min-height: 46px;
  margin-top: auto;
  padding: 12px 23px;
  border: 1px solid var(--charcoal);
  border-radius: 999px;
  color: var(--paper);
  background: var(--charcoal);
  font-size: .875rem;
  line-height: 1.4;
  font-weight: 500;
  letter-spacing: -.01em;
}
.package-cta:hover { background: #35402c; border-color: #35402c; }
.price-card--premium .package-cta { color: var(--charcoal); background: var(--lime); border-color: var(--lime); }
.price-card--premium .package-cta:hover { background: #c6e46c; border-color: #c6e46c; }
.package-inclusions { margin: 36px 0 20px; border-block: 1px solid #d6d2c8; }
.package-inclusions summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 16px;
  min-height: 72px;
  padding: 20px 0;
  list-style: none;
  cursor: pointer;
}
.package-inclusions summary::-webkit-details-marker { display: none; }
.inclusions-label { font-size: 1.35rem; line-height: 1.25; font-weight: 500; letter-spacing: -.04em; }
.inclusions-toggle { color: #59574f; font-size: .875rem; text-decoration: underline; text-underline-offset: 4px; }
.package-inclusions:not([open]) .inclusions-hide, .package-inclusions[open] .inclusions-show { display: none; }
.inclusions-content { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 26px; margin: 0; padding: 2px 0 28px; font-size: .9375rem; line-height: 1.55; }
.inclusions-content li::before { top: 2px; }
.pricing-footnote { max-width: 95ch; color: #67635b; font-size: .8125rem; line-height: 1.65; }

@media (max-width: 860px) {
  .pricing-intro p { max-width: 42ch; }
}
@media (max-width: 767px) {
  .audit-page { --gutter: 22px; }
  .pricing-intro { margin-bottom: 38px; }
  .price-options, .inclusions-content { grid-template-columns: minmax(0, 1fr); }
  .price-options { gap: 36px; }
  .package-heading { padding: 26px 20px 22px; gap: 12px; }
  .package-body { padding: 20px 22px 22px; }
}
@media (max-width: 639px) {
  .package-heading { grid-template-columns: 1fr; gap: 20px; padding: 24px; }
  .package-top h3 { font-size: 1.6rem; }
  .package-price { align-items: baseline; gap: 12px; }
  .price { font-size: 2.25rem; }
  .package-total { margin: 0; }
}


.build-inclusions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px 38px;
  padding: 2px 0 28px;
}
.build-inclusions h3 {
  margin: 0 0 8px;
  color: #232321;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -.02em;
}
.build-inclusions p {
  max-width: 54ch;
  color: #606958;
  font-size: .9375rem;
  line-height: 1.65;
}
@media (max-width: 767px) {
  .build-inclusions { grid-template-columns: 1fr; gap: 23px; }
}

.price-from { font-size: .875rem; letter-spacing: 0; }
.price-card--authority .package-cta {
  background: #d4ef76;
  border-color: #d4ef76;
  color: #20251e;
}
@media(min-width:1120px) {
  .price-options { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
  .package-heading { grid-template-columns: 1fr; gap: 20px; padding: 26px 24px; }
  .package-price { justify-self: start; flex-direction: row; align-items: baseline; gap: 12px; }
  .package-top h3 { font-size: 1.7rem; }
  .package-body { padding-inline: 24px; }
}
@media(min-width:768px) and (max-width:1119px) {
  .price-options { grid-template-columns: 1fr; max-width: 660px; margin-inline: auto; }
}

.client-pricing-offer {
  margin: 0 0 30px;
  padding: 16px 22px;
  background: #20251e;
  color: #d4ef76;
  text-align: center;
  font-size: clamp(1rem, 1.7vw, 1.2rem);
  line-height: 1.4;
  font-weight: 600;
}
.package-heading { grid-template-columns: 1fr; }
.package-heading .package-price {
  flex-direction: column;
  align-items: flex-start;
  justify-self: start;
  gap: 7px;
}
.original-price {
  color: #bfc7b7;
  font-size: 1.125rem;
  line-height: 1.3;
}
.original-price del { text-decoration-thickness: 1.5px; }
.package-price .package-total { margin: 0; }
.price-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
@media(max-width:639px) {
  .client-pricing-offer { padding: 14px 16px; margin-bottom: 24px; }
}

.client-price-line {
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 100%;
}
.client-price-label {
  flex: 0 0 80px;
  max-width: 80px;
  font-size: .75rem;
  line-height: 1.35;
  font-weight: 500;
}
.package-heading .original-price,
.client-price-line .price,
.client-price-label,
.package-price .package-total { color: #d4ef76; }
@media(max-width:480px) {
  .client-price-line .price {
    font-size: clamp(1.8rem, 8vw, 2.25rem);
  }
  .client-price-line .price-from {
    display: block;
    font-size: .75rem;
    line-height: 1.3;
    margin-bottom: 3px;
  }
}
