/* DSG standard page shell — v1.0.68
   Used only for client-created Pages that are not one of the approved bespoke
   DSG pages. Existing designed pages never receive these selectors. */
.dsg-standard-page{background:#fff;color:var(--gray,#5A6478)}
.dsg-standard-page .dsg-standard-hero{
  padding:76px 0 58px;
  background:#fff;
  border-bottom:1px solid var(--hairline,#E9ECF2);
}
.dsg-standard-page .dsg-standard-hero .wrap{display:block}
.dsg-standard-page .dsg-standard-hero .eyebrow{margin:0 0 22px}
.dsg-standard-page .dsg-standard-hero h1{
  max-width:920px;
  margin:0;
  color:var(--ink,#141B4D);
  font-size:clamp(38px,4.5vw,56px);
  line-height:1.08;
  letter-spacing:-.025em;
  font-weight:600;
}
.dsg-standard-page .dsg-standard-deck{
  max-width:800px;
  margin:22px 0 0;
  color:var(--gray,#5A6478);
  font-size:18px;
  line-height:1.65;
}
.dsg-standard-page .dsg-standard-body{padding:68px 0 92px;background:#fff}
/* v1.0.82: content fills the full page container (was capped at 900px, about
   two-thirds of the desktop width), matching the title area and designed pages. */
.dsg-standard-page .dsg-standard-copy{max-width:none;width:100%;margin:0}
.dsg-standard-page .dsg-standard-copy > :first-child{margin-top:0!important}
.dsg-standard-page .dsg-standard-copy > :last-child{margin-bottom:0!important}
.dsg-standard-page .dsg-standard-copy p{margin:0 0 22px;line-height:1.72}
.dsg-standard-page .dsg-standard-copy h2{margin:48px 0 16px;font-size:clamp(28px,3vw,38px);line-height:1.12}
.dsg-standard-page .dsg-standard-copy h3{margin:36px 0 12px;font-size:24px;line-height:1.2}
.dsg-standard-page .dsg-standard-copy h4{margin:30px 0 10px;font-size:19px;line-height:1.24}
.dsg-standard-page .dsg-standard-copy ul,
.dsg-standard-page .dsg-standard-copy ol{margin:0 0 24px;padding-left:1.35em}
.dsg-standard-page .dsg-standard-copy li{margin:0 0 8px}
.dsg-standard-page .dsg-standard-copy .wp-block-image{margin:32px 0}
.dsg-standard-page .dsg-standard-copy .wp-block-image img{max-width:100%;height:auto}
.dsg-standard-page .dsg-standard-copy .wp-block-columns{gap:38px;margin:36px 0}
.dsg-standard-page .dsg-standard-copy .wp-block-buttons{gap:14px;margin:28px 0}
.dsg-standard-page .dsg-standard-copy .wp-block-separator{margin:44px 0;border-color:var(--hairline,#E9ECF2)}
.dsg-standard-page .dsg-standard-copy blockquote{
  margin:36px 0;
  padding:4px 0 4px 24px;
  border-left:3px solid var(--royal,#2847A8);
}
.dsg-standard-page .dsg-standard-copy table{width:100%;border-collapse:collapse;margin:32px 0}
.dsg-standard-page .dsg-standard-copy th,
.dsg-standard-page .dsg-standard-copy td{padding:14px 16px;border:1px solid var(--hairline,#E9ECF2);text-align:left;vertical-align:top}
.dsg-standard-page .dsg-standard-copy a:not(.wp-block-button__link){color:var(--royal,#2847A8);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
@media(max-width:1020px){
  .dsg-standard-page .dsg-standard-hero{padding:64px 0 52px}
  .dsg-standard-page .dsg-standard-body{padding:58px 0 78px}
}
@media(max-width:640px){
  .dsg-standard-page .dsg-standard-hero{padding:52px 0 44px}
  .dsg-standard-page .dsg-standard-body{padding:46px 0 64px}
  .dsg-standard-page .dsg-standard-copy .wp-block-columns{gap:24px}
}


/* --------------------------------------------------------------------------
   v1.0.83 — Standard page polish + event-page layout
   -------------------------------------------------------------------------- */
/* Buttons added in the editor use the DSG navy button, not WordPress' grey pill. */
.dsg-standard-page .dsg-standard-copy .wp-block-button__link{
  display:inline-block;background:var(--royal,#2847A8);color:#fff;border-radius:6px;
  padding:14px 30px;font-size:15px;font-weight:600;line-height:1.3;text-decoration:none;transition:background .2s ease;
}
.dsg-standard-page .dsg-standard-copy .wp-block-button__link:hover,
.dsg-standard-page .dsg-standard-copy .wp-block-button__link:focus{background:var(--navy,#141B4D);color:#fff}
.dsg-standard-page .dsg-standard-copy .is-style-outline .wp-block-button__link{background:transparent;color:var(--royal,#2847A8);border:1.5px solid var(--royal,#2847A8)}
/* Images and galleries get breathing room from the text around them. */
html body #main-content .dsg-standard-copy .wp-block-image,
html body #main-content .dsg-standard-copy .wp-block-gallery{margin:32px 0 !important}

/* Event page: Mission Advantage focus band */
.dsg-standard-copy .dsg-event-focus{
  display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;
  padding:28px 32px;margin:0 0 40px;border:1px solid var(--hairline,#E9ECF2);border-radius:14px;background:#F7F9FC;
}
.dsg-standard-copy .dsg-event-focus .eyebrow{margin:0 !important}
.dsg-standard-copy ul.dsg-event-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0 !important;padding:0 !important}
.dsg-standard-copy ul.dsg-event-chips li{
  margin:0 !important;padding:8px 16px;border:1px solid #D9E1EE;border-radius:999px;background:#fff;
  color:var(--ink,#141B4D);font-size:14px;font-weight:600;line-height:1.3;
}

/* Event page: two form cards */
.dsg-standard-copy .wp-block-columns.dsg-event-forms{gap:28px !important;margin:0 !important;align-items:flex-start !important}
.dsg-standard-copy .dsg-event-card{
  padding:34px 32px 32px;border:1px solid var(--hairline,#E9ECF2);border-radius:14px;background:#fff;
  box-shadow:0 1px 2px rgba(20,27,77,.04);min-width:0;
}
.dsg-standard-copy .dsg-event-card .eyebrow{margin:0 0 14px !important}
.dsg-standard-copy .dsg-event-card h3.dsg-event-card-title{margin:0 0 12px !important;font-size:20px !important;line-height:1.25 !important}
.dsg-standard-copy .dsg-event-card .dsg-event-details{margin:0 0 24px !important;font-size:15.5px;line-height:1.7}
.dsg-standard-copy .dsg-event-embed{border-top:1px solid var(--hairline,#E9ECF2);padding-top:24px}
.dsg-standard-copy .dsg-event-embed > *:last-child{margin-bottom:0 !important}
/* Embedded forms fill the card; Microsoft Bookings gets enough height to show the calendar and details. */
.dsg-standard-copy .dsg-event-embed iframe{display:block;width:100% !important;max-width:100%;border:0}
.dsg-standard-copy .dsg-event-embed iframe[src*="bookings"],
.dsg-standard-copy .dsg-event-embed iframe[src*="Bookings"]{min-height:1200px}
/* On-page forms (WordPress form plugins) pick up DSG field and button styling.
   Embedded iframes such as Microsoft Bookings keep their own styling. */
.dsg-standard-copy .dsg-event-embed input[type="text"],
.dsg-standard-copy .dsg-event-embed input[type="email"],
.dsg-standard-copy .dsg-event-embed input[type="tel"],
.dsg-standard-copy .dsg-event-embed input[type="number"],
.dsg-standard-copy .dsg-event-embed input[type="url"],
.dsg-standard-copy .dsg-event-embed select,
.dsg-standard-copy .dsg-event-embed textarea{
  width:100%;max-width:100%;box-sizing:border-box;padding:11px 13px;border:1px solid #D9E1EE;border-radius:6px;
  background:#fff;color:var(--ink,#141B4D);font:inherit;font-size:15px;line-height:1.4;
}
.dsg-standard-copy .dsg-event-embed input:focus,
.dsg-standard-copy .dsg-event-embed select:focus,
.dsg-standard-copy .dsg-event-embed textarea:focus{outline:2px solid rgba(40,71,168,.35);outline-offset:1px;border-color:var(--royal,#2847A8)}
.dsg-standard-copy .dsg-event-embed label{color:var(--ink,#141B4D);font-weight:600;font-size:14.5px}
.dsg-standard-copy .dsg-event-embed button[type="submit"],
.dsg-standard-copy .dsg-event-embed input[type="submit"],
.dsg-standard-copy .dsg-event-embed button:not([type]),
.dsg-standard-copy .dsg-event-embed .wpforms-submit{
  display:inline-block;padding:14px 30px;border:0;border-radius:6px;background:var(--royal,#2847A8);color:#fff;
  font:inherit;font-size:15px;font-weight:600;line-height:1.3;cursor:pointer;transition:background .2s ease;
}
.dsg-standard-copy .dsg-event-embed button[type="submit"]:hover,
.dsg-standard-copy .dsg-event-embed input[type="submit"]:hover,
.dsg-standard-copy .dsg-event-embed .wpforms-submit:hover{background:var(--navy,#141B4D)}
/* The "FORM AREA" helper is for editors only. */
.dsg-standard-copy .dsg-embed-placeholder{display:none}
@media (max-width:900px){
  .dsg-standard-copy .wp-block-columns.dsg-event-forms{flex-direction:column}
  .dsg-standard-copy .wp-block-columns.dsg-event-forms > .dsg-event-card{flex-basis:100% !important;width:100%}
}
@media (max-width:640px){
  .dsg-standard-copy .dsg-event-focus{padding:22px 20px}
  .dsg-standard-copy .dsg-event-card{padding:26px 20px 22px}
}
