.deck-landing { --deck-blue:#186db8; --deck-navy:#102432; --deck-ink:#14202a; --deck-sand:#f3f0e8; --deck-gold:#dba43a; color:var(--deck-ink); }
.deck-landing h1,.deck-landing h2,.deck-landing h3 { text-transform:none; }
.deck-landing h1:before,.deck-landing h2:before { display:none; }
.deck-landing h2 { margin:0 0 22px; color:var(--deck-ink); font-size:38px; font-weight:700; line-height:1.18; text-align:left; }
.deck-landing p { font-size:16px; line-height:1.7; }
.deck-eyebrow { margin:0 0 12px; color:var(--deck-blue) !important; font-size:13px !important; font-weight:800; letter-spacing:1.8px !important; text-transform:uppercase; }
.deck-hero { position:relative; min-height:700px; overflow:hidden; background:#14202a; }
.deck-hero__image { position:absolute; inset:0; background-position:center; background-size:cover; background-repeat:no-repeat; }
.deck-hero__shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(8,24,35,.94) 0%,rgba(8,24,35,.76) 52%,rgba(8,24,35,.36) 100%); }
.deck-hero__content { position:relative; z-index:2; padding-top:72px; padding-bottom:72px; }
.deck-hero__copy { padding-top:35px; padding-right:55px; }
.deck-hero h1 { margin:0 0 25px; color:#fff; font-size:61px; line-height:1.05; text-align:left; text-transform:none; }
.deck-hero h1 span { color:#69b4f5; }
.deck-hero__lead { max-width:650px; color:#fff !important; font-size:21px !important; line-height:1.55 !important; }
.deck-proof-list { margin:28px 0 30px; }
.deck-proof-list li { margin:12px 0; color:#fff; font-size:16px; }
.deck-proof-list i { width:25px; color:#69b4f5; }
.deck-hero__actions { display:flex; flex-wrap:wrap; gap:12px; }
.deck-button { display:inline-block; border:2px solid transparent; padding:14px 24px; font-size:14px; font-weight:800; letter-spacing:.35px; text-align:center; text-decoration:none; text-transform:uppercase; }
.deck-button:hover,.deck-button:focus { text-decoration:none; }
.deck-button--primary { background:var(--deck-blue); color:#fff; }
.deck-button--primary:hover,.deck-button--primary:focus { background:#0f5594; color:#fff; }
.deck-button--outline { border-color:rgba(255,255,255,.75); color:#fff; }
.deck-button--outline:hover,.deck-button--outline:focus { background:#fff; color:var(--deck-navy); }
.deck-button--light { background:#fff; color:var(--deck-navy); }
.deck-button--light:hover,.deck-button--light:focus { background:#dfeef9; color:var(--deck-navy); }
.deck-button--full { width:100%; }
.deck-quote-card { max-width:560px; margin-left:auto; padding:32px 36px 26px; background:#fff; box-shadow:0 24px 70px rgba(0,0,0,.3); }
.deck-quote-card__kicker { margin-bottom:4px; color:var(--deck-blue) !important; font-size:12px !important; font-weight:800; letter-spacing:1.2px !important; text-transform:uppercase; }
.deck-quote-card h2 { margin-bottom:8px; font-size:28px; }
.deck-quote-card > p { font-size:14px; line-height:1.5; }
.deck-quote-card .gform_wrapper { margin:20px 0 0; }
.deck-quote-card .gform_wrapper form { margin:0; }
.deck-quote-card .gform_validation_container,
.deck-quote-card .gfield.gform_validation_container {
  display:none !important;
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
.deck-quote-card .gform_wrapper .gform_fields { row-gap:17px; }
.deck-quote-card .gfield { margin:0; }
.deck-quote-card .gfield_label,
.deck-quote-card .gform-field-label { margin:0 0 7px !important; color:var(--deck-ink); font-size:14px !important; font-weight:700 !important; line-height:1.35; }
.deck-quote-card .gfield_required { margin-left:3px; color:#b42318 !important; font-size:14px !important; }
.deck-quote-card .ginput_container { margin-top:0 !important; }
.deck-quote-card .ginput_complex { display:grid !important; grid-template-columns:1fr 1fr; gap:12px; }
.deck-quote-card .ginput_complex > span { width:100% !important; margin:0 !important; padding:0 !important; }
.deck-quote-card .ginput_complex label { display:block; margin:5px 0 0 !important; color:#606d75; font-size:12px !important; line-height:1.3; }
.deck-quote-card input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.deck-quote-card textarea,
.deck-quote-card select {
  width:100% !important;
  min-height:48px;
  margin:0 !important;
  border:1px solid #aeb8bf !important;
  border-radius:3px !important;
  background:#fff !important;
  box-shadow:none !important;
  color:#17242d !important;
  font-size:16px !important;
  line-height:1.35 !important;
  padding:11px 12px !important;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.deck-quote-card input:not([type="submit"]):focus,
.deck-quote-card textarea:focus,
.deck-quote-card select:focus { border-color:var(--deck-blue) !important; box-shadow:0 0 0 3px rgba(24,109,184,.16) !important; outline:0; }
.deck-quote-card textarea { min-height:105px !important; resize:vertical; }
.deck-quote-card .gform_footer { margin:19px 0 0 !important; padding:0 !important; }
.deck-quote-card .gform_button { width:100% !important; min-height:50px; margin:0 !important; padding:14px 18px !important; border-radius:3px; background:var(--deck-blue) !important; font-size:15px !important; cursor:pointer; }
.deck-quote-card .gform_button:hover,
.deck-quote-card .gform_button:focus { background:#0f5594 !important; box-shadow:0 0 0 3px rgba(24,109,184,.18); outline:0; }
.deck-quote-card .gform_ajax_spinner { display:block; margin:10px auto 0; }
.deck-quote-card .gform_validation_errors { margin:0 0 20px !important; padding:15px 16px !important; border:1px solid #d92d20 !important; border-left:5px solid #d92d20 !important; border-radius:3px !important; background:#fff3f2 !important; box-shadow:none !important; }
.deck-quote-card .gform_validation_errors h2,
.deck-quote-card .gform_validation_errors .gform_submission_error { margin:0 !important; padding:0 !important; color:#8f1d17 !important; font-family:'Open Sans',sans-serif !important; font-size:15px !important; font-weight:700 !important; line-height:1.5 !important; text-align:left !important; text-transform:none !important; }
.deck-quote-card .gform_validation_errors .gform-icon { margin-right:7px; }
.deck-quote-card .gfield_error { padding:12px !important; border:1px solid #e6a39d; border-radius:3px; background:#fff8f7; }
.deck-quote-card .gfield_error .gfield_label,
.deck-quote-card .gfield_error .gform-field-label { color:#771d18 !important; }
.deck-quote-card .gfield_error input:not([type="submit"]),
.deck-quote-card .gfield_error textarea,
.deck-quote-card .gfield_error select { border-color:#d92d20 !important; }
.deck-quote-card .gfield_validation_message,
.deck-quote-card .validation_message { margin:7px 0 0 !important; padding:8px 10px !important; border:0 !important; border-left:3px solid #d92d20 !important; background:#fdecea !important; color:#8f1d17 !important; font-size:13px !important; font-weight:700; line-height:1.45; }
.deck-quote-card .gfield_description:not(.gfield_validation_message) { margin-top:6px; color:#5e6b73; font-size:12px; line-height:1.4; }
.deck-quote-card .gform_confirmation_message { padding:18px; border-left:5px solid #14804a; background:#ecfdf3; color:#115c38; font-size:16px; font-weight:700; line-height:1.55; }
.deck-quote-card__privacy { margin:12px 0 0 !important; color:#65727c !important; font-size:12px !important; text-align:center; }
.deck-trust-strip { border-bottom:1px solid #dbe0e4; background:#fff; }
.deck-trust-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.deck-trust-grid > div { display:flex; align-items:center; gap:16px; min-width:0; padding:24px 25px; border-right:1px solid #dbe0e4; }
.deck-trust-grid > div:last-child { border-right:0; }
.deck-trust-item > i { flex:0 0 42px; color:var(--deck-blue); font-size:29px; line-height:1; text-align:center; }
.deck-trust-copy { min-width:0; }
.deck-trust-grid strong,.deck-trust-grid span { display:block; }
.deck-trust-grid strong { margin-bottom:3px; color:var(--deck-blue); font-family:'Oswald',sans-serif; font-size:18px; }
.deck-trust-grid span { color:#5c6870; font-size:13px; line-height:1.4; }
.deck-section { padding:85px 0; }
.deck-align-center { display:flex; align-items:center; }
.deck-intro .col-md-6:first-child { padding-right:60px; }
.deck-tick-list { margin:24px 0; display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; }
.deck-tick-list li { position:relative; padding-left:25px; font-size:15px; line-height:1.5; }
.deck-tick-list li:before { position:absolute; left:0; color:var(--deck-blue); content:'\f058'; font-family:'Font Awesome 5 Pro'; }
.deck-text-link { color:var(--deck-blue); font-size:15px; font-weight:800; text-transform:uppercase; }
.deck-feature-image { position:relative; margin:0; box-shadow:18px 18px 0 var(--deck-sand); }
.deck-feature-image img { width:100%; }
.deck-feature-image figcaption { position:absolute; right:0; bottom:0; padding:10px 16px; background:rgba(16,36,50,.92); color:#fff; font-size:13px; }
.deck-section--dark { background:var(--deck-navy); }
.deck-section--dark h2,.deck-section--dark p { color:#fff; }
.deck-section__intro { max-width:650px; margin-bottom:32px; }
.deck-project-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.deck-project-grid figure { position:relative; height:330px; margin:0; overflow:hidden; background:#263b49; }
.deck-project-grid img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.deck-project-grid figure:hover img { transform:scale(1.035); }
.deck-project-grid figcaption { position:absolute; right:0; bottom:0; left:0; padding:18px 20px; background:linear-gradient(transparent,rgba(0,0,0,.88)); color:#fff; }
.deck-project-grid figcaption strong,.deck-project-grid figcaption span { display:block; }
.deck-project-grid figcaption strong { font-family:'Oswald',sans-serif; font-size:21px; }
.deck-project-grid figcaption span { color:#cbd5db; font-size:14px; }
.deck-projects__link { margin:30px 0 0; text-align:center; }
.deck-process { background:var(--deck-sand); }
.deck-process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:25px; margin-top:38px; counter-reset:step; }
.deck-process-grid article { min-height:230px; padding:28px 24px; background:#fff; border-top:4px solid var(--deck-blue); box-shadow:0 10px 25px rgba(16,36,50,.07); }
.deck-process-grid article > span { display:block; margin-bottom:25px; color:#b9c4cb; font-family:'Oswald',sans-serif; font-size:38px; font-weight:700; }
.deck-process-grid h3 { margin:0 0 12px; color:var(--deck-ink); font-size:20px; }
.deck-process-grid p { margin:0; color:#53616a; font-size:14px; line-height:1.6; }
.deck-service-area { background:#fff; }
.deck-service-area .col-md-5 { padding-right:55px; }
.deck-suburb-list { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; padding:25px; background:#f5f7f8; border-left:5px solid var(--deck-blue); }
.deck-suburb-list li { color:#33424b; font-size:14px; }
.deck-suburb-list i { width:19px; color:var(--deck-blue); }
.deck-reviews { background:#303438 url('../img/testimonial-bg.jpg') repeat; }
.deck-reviews .deck-eyebrow { color:#69b4f5 !important; }
.deck-reviews h2 { color:#fff; }
.deck-reviews__heading { display:flex; align-items:flex-end; justify-content:space-between; gap:45px; margin-bottom:35px; }
.deck-reviews__heading > div:first-child { max-width:720px; }
.deck-reviews__heading h2 { margin-bottom:12px; }
.deck-reviews__heading p:last-child { margin-bottom:0; color:#e4e8ea; }
.deck-reviews__rating { min-width:185px; padding:18px 22px; border-top:4px solid var(--deck-blue); background:#fff; box-shadow:0 8px 25px rgba(16,36,50,.08); }
.deck-reviews__rating .reviewBox { margin:0; text-align:center; }
.deck-reviews__rating .reviewBox img { vertical-align:middle; }
.deck-review-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.deck-review-card { display:flex; flex-direction:column; min-height:295px; padding:28px; border:1px solid #e0ddd5; background:#fff; box-shadow:0 10px 28px rgba(16,36,50,.06); }
.deck-review-card__stars { margin-bottom:18px; color:var(--deck-gold); font-size:16px; letter-spacing:2px; }
.deck-review-card blockquote { flex:1; margin:0 0 24px; padding:0; border:0; }
.deck-review-card blockquote p { margin:0; color:#33434d; font-size:15px; font-style:italic; line-height:1.7; }
.deck-review-card footer { display:flex; align-items:center; justify-content:space-between; gap:15px; padding-top:18px; border-top:1px solid #e3e6e8; }
.deck-review-card footer strong,.deck-review-card footer span { display:block; }
.deck-review-card footer strong { color:var(--deck-ink); font-family:'Oswald',sans-serif; font-size:17px; }
.deck-review-card footer span { margin-top:2px; color:#68767e; font-size:13px; }
.deck-review-card footer img { width:25px; height:25px; }
.deck-reviews__cta { margin:30px 0 0; text-align:center; }
.deck-reviews__cta .deck-text-link { color:#fff; }
.deck-reviews__cta .deck-text-link:hover,
.deck-reviews__cta .deck-text-link:focus { color:#69b4f5; }
.deck-faq { background:#f5f7f8; }
.deck-faq h2,.deck-faq > .container > .deck-eyebrow { text-align:center; }
.deck-faq-list { max-width:850px; margin:35px auto 0; }
.deck-faq-list details { margin-bottom:12px; padding:0 22px; border:1px solid #d9dfe3; background:#fff; }
.deck-faq-list summary { position:relative; padding:20px 35px 20px 0; cursor:pointer; font-family:'Oswald',sans-serif; font-size:18px; font-weight:600; list-style:none; }
.deck-faq-list summary::-webkit-details-marker { display:none; }
.deck-faq-list summary:after { position:absolute; top:17px; right:0; color:var(--deck-blue); content:'+'; font-size:25px; }
.deck-faq-list details[open] summary:after { content:'\2212'; }
.deck-faq-list details p { padding:0 0 20px; color:#52616a; }
.deck-final-cta { padding:45px 0; background:var(--deck-blue); }
.deck-final-cta .container { display:flex; align-items:center; justify-content:space-between; }
.deck-final-cta .deck-eyebrow { color:#d9efff !important; }
.deck-final-cta h2 { margin:0; color:#fff; }
.deck-final-cta__actions { display:flex; align-items:center; gap:25px; }
.deck-final-cta__phone { color:#fff; font-size:19px; font-weight:700; }
.deck-final-cta__phone:hover { color:#fff; }
.deck-mobile-actions { display:none; }

@media (max-width:991px) {
  .deck-hero { min-height:0; }
  .deck-hero__copy { padding-top:0; padding-right:30px; }
  .deck-hero h1 { font-size:48px; }
  .deck-trust-grid { grid-template-columns:1fr 1fr; }
  .deck-trust-grid > div:nth-child(2) { border-right:0; }
  .deck-align-center { display:block; }
  .deck-intro .col-md-6:first-child { margin-bottom:45px; padding-right:15px; }
  .deck-process-grid { grid-template-columns:1fr 1fr; }
  .deck-service-area .col-md-5 { margin-bottom:35px; padding-right:15px; }
  .deck-review-grid { grid-template-columns:1fr; }
  .deck-review-card { min-height:0; }
}
@media (max-width:767px) {
  body.deck-builders-northern-beaches { padding-bottom:58px; }
  .deck-hero__image { background-position:60% center; }
  .deck-hero__shade { background:rgba(8,24,35,.84); }
  .deck-hero__content { padding-top:45px; padding-bottom:45px; }
  .deck-hero__copy { padding-right:15px; }
  .deck-hero h1 { font-size:43px; }
  .deck-hero__lead { font-size:18px !important; }
  .deck-hero__actions { margin-bottom:35px; }
  .deck-button { width:100%; }
  .deck-quote-card { width:100%; max-width:none; margin:0; padding:26px 20px 22px; }
  .deck-quote-card h2 { font-size:26px; }
  .deck-quote-card .gform_wrapper .gform_fields { display:block; }
  .deck-quote-card .gfield { width:100% !important; margin-bottom:16px; grid-column:1 / -1 !important; }
  .deck-quote-card .ginput_complex { grid-template-columns:1fr; gap:13px; }
  .deck-quote-card input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
  .deck-quote-card select { min-height:52px; font-size:16px !important; }
  .deck-quote-card textarea { min-height:120px !important; }
  .deck-quote-card .gfield_error { margin-right:0 !important; margin-left:0 !important; padding:11px !important; }
  .deck-quote-card .gform_validation_errors { margin-bottom:18px !important; }
  .deck-quote-card .gform_validation_errors h2,
  .deck-quote-card .gform_validation_errors .gform_submission_error { font-size:14px !important; }
  .deck-quote-card .gform_button { min-height:54px; }
  .deck-trust-grid { grid-template-columns:1fr; }
  .deck-trust-grid > div { border-right:0; border-bottom:1px solid #dbe0e4; }
  .deck-trust-grid > div:last-child { border-bottom:0; }
  .deck-trust-item > i { flex-basis:38px; font-size:26px; }
  .deck-section { padding:60px 0; }
  .deck-landing h2 { font-size:32px; }
  .deck-tick-list,.deck-project-grid,.deck-process-grid,.deck-suburb-list { grid-template-columns:1fr; }
  .deck-project-grid figure { height:275px; }
  .deck-process-grid article { min-height:0; }
  .deck-reviews__heading { display:block; margin-bottom:28px; }
  .deck-reviews__rating { width:100%; max-width:260px; margin-top:24px; }
  .deck-review-card { padding:24px 21px; }
  .deck-final-cta .container,.deck-final-cta__actions { display:block; }
  .deck-final-cta__actions { margin-top:25px; }
  .deck-final-cta__phone { display:block; margin-top:20px; text-align:center; }
  .deck-mobile-actions { position:fixed; right:0; bottom:0; left:0; z-index:2000; display:grid; grid-template-columns:1fr 1fr; box-shadow:0 -3px 15px rgba(0,0,0,.2); }
  .deck-mobile-actions a { padding:17px 10px; background:var(--deck-navy); color:#fff; font-size:15px; font-weight:800; text-align:center; text-transform:uppercase; }
  .deck-mobile-actions a:last-child { background:var(--deck-blue); }
  .deck-mobile-actions i { margin-right:7px; }
  .deck-builders-northern-beaches .page-scroll { display:none !important; }
}
@media (prefers-reduced-motion:reduce) { .deck-project-grid img { transition:none; } }
