*{box-sizing:border-box} :root{--ink:#0c3148;--deep:#1d737e;--teal:#21a2ba;--mint:#83e4ef;--paper:#eaf5f7;--line:#c9e1e5;--display:Montserrat,system-ui,sans-serif;--body:"Source Sans 3",system-ui,sans-serif;color:var(--ink);font-family:var(--body);font-size:18px}body{margin:0;background:#fff}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}img{display:block;max-width:100%}h1,h2,h3{font-family:var(--display);margin:0;line-height:1.1;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(2.55rem,5.6vw,5rem);font-weight:900}h2{font-size:clamp(1.85rem,4vw,3.3rem);font-weight:800}h3{font-size:1.24rem;font-weight:800}p,ul{line-height:1.5}p{margin:.7rem 0 1.1rem}section[id]{scroll-margin-top:100px}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}.skip{position:absolute;top:-4rem;left:1rem;z-index:100;background:white;padding:.5rem}.skip:focus{top:0}:focus-visible{outline:3px solid #147c92;outline-offset:4px}header{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);z-index:10}.bar{display:flex;align-items:center;gap:1.5rem;min-height:76px}.brand{margin-right:auto;flex:none}.brand img{width:154px;height:49px;object-fit:contain;object-position:left}.bar nav{display:flex;gap:1.3rem;font-weight:700}.bar nav a{text-decoration:none}.bar nav a:hover,.link:hover{text-decoration:underline}.button,.pill,.icon{display:inline-flex;align-items:center;justify-content:center;gap:.4em;border:1px solid transparent;border-radius:.5rem;text-decoration:none;font-weight:700;min-height:44px;padding:.55rem 1rem}.button{background:var(--ink);color:#fff}.button:hover{background:#15516c}.button.small{font-size:.88rem}.button.light{background:var(--mint);color:#082d42}.button.outline{color:inherit;background:transparent;border-color:currentColor}.icon{padding:.3rem;width:42px;background:var(--paper);color:var(--ink)}.hero{background:#071f31;color:white;padding:clamp(2.5rem,6vw,5rem) 0 2rem;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.6rem,4vw,4rem);align-items:center}.hero .body{font-size:clamp(1.1rem,2vw,1.35rem);max-width:30ch;color:#dbf3f7}.eyebrow{font:800 .71rem var(--display);letter-spacing:.13em;text-transform:uppercase;color:#126777;margin:0 0 .8rem}.hero .eyebrow,.dark .eyebrow{color:var(--mint)}.actions,.filters{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.hero-photo{position:relative}.hero-photo img{width:100%;aspect-ratio:1.08;object-fit:cover;border-radius:1.2rem}.photo-label{position:absolute;bottom:1rem;left:1rem;background:#082b41ed;border-radius:.4rem;padding:.35rem .65rem;font-weight:700;font-size:.8rem}.quick{margin-top:2.4rem;display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.quick a{display:flex;flex-direction:column;background:#12354a;padding:.8rem 1rem;border:1px solid #285568;border-radius:.5rem;text-decoration:none;color:#def7f9}.quick b{font-family:var(--display);color:#fff}.band{padding:clamp(2.6rem,6vw,5.2rem) 0}.tint{background:var(--paper)}.dark{background:#0c3148;color:#fff}.intro{max-width:60ch;margin-bottom:1.35rem}.filters{margin:1.5rem 0}.pill{border-color:#84adb7;color:var(--ink);background:white;border-radius:99px}.pill[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid var(--line);border-radius:1rem;overflow:hidden;display:flex;flex-direction:column;min-width:0}.card img,.custom-photo{width:100%;aspect-ratio:1.85;object-fit:cover;background:var(--paper)}.card-body{padding:1.2rem;flex:1;display:flex;flex-direction:column}.card-body .link{margin-top:auto;align-self:flex-start}.tag{align-self:flex-start;background:var(--paper);color:#115767;border-radius:.35rem;padding:.2rem .5rem;font-weight:700;font-size:.84rem;margin-bottom:.65rem}.meta{font-weight:700;margin:.65rem 0 0}.place{font-size:.9rem;margin:.15rem 0 .45rem}.link{color:#126777;font-weight:700;text-underline-offset:.17em}.plan{padding:1.3rem}.plan.featured{background:#0c3148;color:#fff;border-color:#0c3148}.plan.featured .button{background:var(--mint);color:#082d42}.price{font:800 clamp(1.8rem,3.5vw,3rem) var(--display);margin:.65rem 0}.plan ul{padding-left:1.1rem;margin:.45rem 0 1.2rem}.plan .button{margin-top:auto}.shared{margin-top:1.2rem;background:#fff;border:1px solid var(--line);border-radius:.75rem;padding:1rem 1.25rem}.shared ul{columns:3;column-gap:2rem}.shared li{break-inside:avoid}.pricing-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.4rem}.custom{margin:1rem 0 1.5rem}.contact{display:grid;grid-template-columns:1fr 1.15fr;gap:2rem}.contact iframe{width:100%;min-height:610px;border:0;background:white;border-radius:.7rem}.inquiry{background:white;color:var(--ink);border-radius:.8rem;padding:1.25rem;display:grid;gap:.7rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}label{display:grid;gap:.25rem;font-weight:700;font-size:.9rem}input,select,textarea{width:100%;min-width:0;border:1px solid #86adb7;border-radius:.4rem;padding:.55rem .6rem;background:#fff;color:#0c3148}textarea{resize:vertical;min-height:6rem}input[type=color]{height:42px;padding:.2rem}input[type=checkbox]{width:auto;justify-self:start}.inquiry .button{justify-self:start}.inquiry p{margin:0}.footer{display:flex;gap:1rem 1.7rem;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:1.4rem 0;font-size:.9rem}.footer a{font-weight:700}.body ul{padding-left:1.25em}.body p{white-space:pre-line}.editor-head,.editor-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:white}.editor-head{position:sticky;top:0;z-index:2;border-bottom:1px solid var(--line)}.editor-foot{position:sticky;bottom:0;border-top:1px solid var(--line)}dialog{padding:0;border:1px solid var(--line);border-radius:1rem;color:var(--ink);max-width:calc(100% - 24px);width:750px;max-height:90dvh;overscroll-behavior:contain}dialog::backdrop{background:#071f31b8}#editor-fields,#comparison{padding:1rem}.edit-group{border:1px solid var(--line);border-radius:.5rem;margin-bottom:.55rem}.edit-group summary{cursor:pointer;font-weight:700;padding:.6rem .8rem}.edit-grid{display:grid;gap:.7rem;padding:.65rem .8rem .9rem}.edit-grid .button{justify-self:start}.edit-note{font-size:.88rem}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.91rem}th,td{padding:.55rem;border-bottom:1px solid var(--line);text-align:left;min-width:105px}th{background:var(--paper)}.inbox{overflow-wrap:anywhere}.inbox li{margin-bottom:.9rem}.quiet{font-size:.88rem}.error{color:#9a2817}.trap{position:absolute;left:-9999px}.button,.pill,.icon{transition:background-color .15s,color .15s}
@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.plans{grid-template-columns:repeat(3,minmax(0,1fr))}.bar{gap:.7rem}.bar nav{gap:.65rem}.head-cta{display:none}.hero-grid{gap:1.3rem}.shared ul{columns:2}}
@media(max-width:650px){.wrap{width:calc(100% - 28px)}.brand img{width:104px;height:38px}.bar{min-height:62px;gap:.45rem}.bar nav{font-size:.81rem;gap:.52rem}.bar .icon{width:35px;min-height:38px}.hero-grid,.contact,.grid,.grid.plans,.grid.two{grid-template-columns:1fr}.hero-photo img{aspect-ratio:1.45}.quick{gap:.35rem}.quick a{padding:.48rem;font-size:.73rem}.quick b{font-size:.82rem}.pricing-head{align-items:start;flex-direction:column}.shared ul{columns:1}.form-row{grid-template-columns:1fr}.editor-head h2{font-size:1.3rem}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
#overview-button{margin:0 0 1.3rem}#overview-player{background:#0c3148;color:#fff}#overview-player:empty{display:none}.overview-note{padding:0 1rem;font-size:.9rem}#tier-canvas{width:100%;height:clamp(180px,36vw,275px);background:#edf7f8;border-radius:.65rem;overflow:hidden}#tier-canvas canvas{display:block;width:100%;height:100%}#tier-visual .filters{margin:.75rem 0}
#admin-tools{background:var(--paper);border-bottom:1px solid var(--line);padding:.7rem 0}
#admin-login,#admin-bar{display:flex;align-items:end;flex-wrap:wrap;gap:.65rem}
#admin-login strong,#admin-bar strong,#admin-bar span{align-self:center}
#admin-login label{width:min(100%,13rem)}
#admin-bar span{font-size:.93rem}
#edit-status:empty{display:none}
#edit-status{display:block;margin-top:.35rem}
[data-inline-path]{outline:1px dashed #218b9c;outline-offset:3px;cursor:text}
[data-inline-path]:focus{outline:2px solid #21a2ba}
.body[data-inline-path]{min-height:1.5em;margin:.75rem 0;white-space:pre-wrap;overflow-wrap:anywhere}
.inline-controls{margin:.8rem 0 .4rem;color:var(--ink);background:#f5fbfc;overflow-wrap:anywhere}
.block-save{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;margin:.55rem 0}
.block-save .button,.inline-controls .button{font-size:.86rem;padding:.35rem .7rem}
.block-status{font-size:.84rem}
.dark .block-save .button,.hero .block-save .button,.featured .block-save .button{background:var(--mint);color:var(--ink)}
.card > .inline-controls,.card > .block-save{margin-inline:1rem}
@media(max-width:650px){#admin-login label{width:100%}#admin-bar span{width:100%}}
#admin-dialog{width:420px}#admin-dialog h2{font-size:1.35rem}#admin-login{display:grid;align-items:stretch;padding:1rem;gap:.8rem}#admin-login label{width:100%}#admin-login .button{justify-self:start}#login-status:empty{display:none}
.builder-toolbar,.builder-element,.builder-container{margin-block:1rem}
.builder-toolbar,.builder-container{border:1px solid var(--line);border-radius:.7rem;padding:.8rem}
.builder-actions{display:flex;align-items:end;flex-wrap:wrap;gap:.55rem;margin:.35rem 0}
.builder-actions .button{font-size:.86rem}
.builder-actions label{min-width:8rem}
.builder-image{width:min(100%,900px);max-height:520px;aspect-ratio:1.8}
.builder-placeholder{border:1px dashed currentColor;padding:1rem}
.builder-header-controls,.footer>.inline-controls{width:100%}
.dark .builder-toolbar .button,.hero .builder-toolbar .button{background:var(--mint);color:var(--ink)}
.builder-element hr{border:0;border-top:1px solid currentColor;opacity:.35}
/* The public buttons follow the Retirement Motion Edition. */
.button {
  border-radius: 8px;
  font-family: var(--display);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.button.light, .featured .button { background: #21a2ba; color: #0c3148; }
.button.light:hover, .featured .button:hover { background: #006678; color: #fff; }
.button.outline:hover { background: #7f7f7f22; }
.hero .button.outline:hover { background: #ffffff19; }
@media (hover: hover) and (pointer: fine) {
  .bar nav a:hover { background: #21a2ba17; border-radius: 6px; }
  .card:hover { border-color: #21a2ba; }
}
@media (prefers-reduced-motion: no-preference) {
  .button, .pill, .icon, .card, .quick a {
    transition: translate .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
  }
  .button:active, .pill:active, .icon:active { translate: 0 1px; }
  @media (hover: hover) and (pointer: fine) {
    .button:not(:disabled):hover, .pill:hover, .icon:hover, .card:hover, .quick a:hover { translate: 0 -2px; }
  }
}

/* These cues are attached only to controls and fields created by the editor. */
#admin-tools { background: #eef3ff; border-color: #aabff4; }
#admin-bar strong { color: #233f83; }
[data-inline-path] { outline: 2px dashed #3484ef; outline-offset: 4px; border-radius: 3px; }
[data-inline-path]:hover { background-color: #3484ef18; }
[data-inline-path]:focus { outline: 3px solid #3484ef; background-color: #3484ef24; }
.inline-controls { background: #edf4ff; border-color: #abc6ef; }
.inline-controls > summary { color: #1d4282; }
.builder-toolbar { background: #f4efff; border-color: #c8b7ed; color: #472680; }
.builder-actions .button:not(:disabled),
[data-duplicate-card], [data-move] { background: #f3ecff; color: #472680; border-color: #9d81d3; }
.button:is([data-save], #save-page, [data-builder-op="saveSection"]) {
  background: #166534;
  color: #fff;
  border-color: #166534;
}
.button:is([data-save], #save-page, [data-builder-op="saveSection"]):not(:disabled):hover {
  background: #104c27;
  color: #fff;
}
.button:is([data-remove], [data-builder-op="remove"], [data-builder-op="resetBlock"], #reset-page) {
  background: #fff0ed;
  color: #922918;
  border-color: #c77060;
}
.button:is([data-remove], [data-builder-op="remove"], [data-builder-op="resetBlock"], #reset-page):hover {
  background: #fbd9d2;
  color: #761f12;
}
#admin-tools :focus-visible, .inline-controls :focus-visible, .builder-toolbar :focus-visible {
  outline: 2px solid #255dc0;
  outline-offset: 3px;
}
.reach-grid { margin-top: 1.25rem; }
.reach-support { grid-column: 1 / -1; }
.media-channel .custom-photo { aspect-ratio: 2.2; }
.media-channel .card-body { padding: clamp(1rem, 3vw, 1.8rem); }
.media-category, .plan-label {
  font-family: var(--display);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .085em;
  line-height: 1.4;
  text-transform: uppercase;
}
.media-category { color: #146478; margin: 0 0 .65rem; }
#pricing { background: #f4f8fa; }
.pricing-intro { max-width: 56ch; margin: .7rem 0 0; color: #34556c; }
#pricing .plans { gap: clamp(.65rem, 1.7vw, 1.35rem); }
#pricing .plan {
  padding: clamp(1.05rem, 2.3vw, 1.8rem);
  border-top: 4px solid #21a2ba;
  box-shadow: 0 14px 30px #0c31480d;
}
#pricing .plan.featured {
  background: radial-gradient(ellipse at top right,#1b5066 0%,transparent 62%), #0c3148;
  border-top-color: #62d2e4;
  box-shadow: 0 16px 30px #0c31482b;
}
.plan-label { margin: 0 0 1rem; color: #146478; }
.featured .plan-label { color: #a4eef4; }
.plan-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: .15rem .55rem; }
.plan-price .price { font-size: clamp(1.8rem, 4vw, 3.4rem); letter-spacing: -.06em; margin: .55rem 0 0; }
.plan-price span { font-size: .85rem; opacity: .85; }
#pricing .plan-features {
  list-style: none;
  padding: 1rem 0 .2rem;
  border-top: 1px solid #5992a456;
  margin: 0 0 1.35rem;
}
.plan-features li { display: flex; gap: .55rem; margin: .38rem 0; line-height: 1.35; }
.plan-features li::before { content: ''; width: .45em; height: .25em; margin-top: .4em; flex: none; border: solid #14829a; border-width: 0 0 2px 2px; rotate: -45deg; }
.featured .plan-features li::before { border-color: #8fe8ee; }
#pricing .plan-action { justify-content: space-between; gap: .55rem; text-align: left; padding-inline: .8rem; }
.action-arrow { font-size: 1.1em; flex: none; }
@media (prefers-reduced-motion: no-preference) {
  :is(a,button).button { position: relative; overflow: hidden; isolation: isolate; }
  :is(a,button).button::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(110deg,transparent 18%,#ffffff50 50%,transparent 82%);
    transform: translateX(-110%);
  }
  :is(a,button).button:not(:disabled):is(:hover,:focus-visible)::before { animation: button-sweep .62s ease-out; }
  .action-arrow { transition: translate .2s ease; }
  .plan-action:is(:hover,:focus-visible) .action-arrow { translate: 3px -2px; }
  @keyframes button-sweep { to { transform: translateX(110%); } }
}
.guide-value { background: #082b40; color: #fff; }
.guide-value .intro { color: #def1f5; }
.guide-stats, .guide-reasons, .office-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(.65rem,2vw,1.2rem); }
.guide-stats { margin: 1.5rem 0 .5rem; }
.guide-stats > div, .guide-reasons > div { border: 1px solid #80cbd757; border-radius: .8rem; padding: clamp(.8rem,2.5vw,1.4rem); }
.guide-stats > div, .media-stats > div { display: flex; flex-direction: column-reverse; justify-content: flex-end; }
.guide-stats dd, .media-stats dd { margin: 0; font-family: var(--display); font-weight: 800; }
.guide-stats dd { color: #83e4ef; font-size: clamp(1.7rem,4vw,3.4rem); line-height: 1.1; }
.guide-stats dt { margin-top: .4rem; }
.guide-caption { font-size: .85rem; opacity: .82; }
.guide-reasons { margin-top: 1.6rem; }
.guide-reasons p { margin-bottom: 0; color: #def1f5; }
.media-stats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .45rem; margin: .7rem 0 1rem; }
.media-stats > div { background: #eaf5f7; border-radius: .45rem; padding: .55rem .65rem; }
.media-stats dd { color: #13657a; font-size: 1.12rem; }
.media-stats dt { font-size: .83rem; }
.media-detail, .event-history { font-size: .9rem; }
.event-history { color: #15596b; font-weight: 700; margin: .45rem 0; }
.event-highlights { margin: .45rem 0 1rem; border-top: 1px solid #b7d4dd; padding-top: .55rem; }
.event-highlights summary { cursor: pointer; font-weight: 700; }
.event-highlights ul { margin-bottom: 0; padding-inline-start: 1.2rem; }
.event-links { display: flex; flex-direction: column; align-items: start; gap: .4rem; margin-top: auto; }
.guide-offices { padding-block: 2.25rem 1.4rem; border-bottom: 1px solid #b7d4dd; }
.guide-offices h2 { font-size: clamp(1.45rem,3vw,2.1rem); margin-bottom: 1rem; }
.office-grid address { white-space: pre-line; font-style: normal; margin-top: .5rem; }
.office-grid p { font-size: .9rem; }
@media (max-width: 650px) {
  .guide-reasons, .office-grid { grid-template-columns: 1fr; }
  .guide-stats > div { padding: .55rem; }
  .guide-stats dd { font-size: clamp(1.08rem,5vw,1.65rem); }
  .guide-stats dt { font-size: .8rem; line-height: 1.25; }
}
/* CCP motion treatment for public calls to action and featured titles. */
body:not(.is-editing) :is(header a.button, #content .button, #compare .button, .office-call):not(:disabled) {
  background: linear-gradient(115deg,#249eb1,#69e5ee,#22afc1,#85eef4);
  background-size: 260% 100%;
  color: #03252e;
  border-color: #92edf5;
  box-shadow: 0 4px 15px #20a6b925;
}
.title-accent, body:not(.is-editing) #pricing .featured :is(h2,h3,h4,.price) { color: #79deeb; }
@supports (background-clip: text) {
  .title-accent, body:not(.is-editing) #pricing .featured :is(h2,h3,h4,.price) {
    background: linear-gradient(110deg,#42c5d6 15%,#baf9ff 40%,#42c5d6 65%);
    background-size: 220% 100%;
    background-clip: text;
    color: transparent;
  }
}
@media (prefers-reduced-motion: no-preference) {
  body:not(.is-editing) :is(header a.button, #content .button, #compare .button, .office-call):not(:disabled) {
    animation: ccp-gradient 7s ease-in-out infinite, ccp-glow 3.8s ease-in-out infinite;
  }
  body:not(.is-editing) :is(header a.button, #content .button, #compare .button, .office-call):not(:disabled):is(:hover,:focus-visible) {
    animation: ccp-gradient 3s ease-in-out infinite;
    box-shadow: 0 0 0 4px #20a6b928, 0 9px 32px #20a6b967;
    translate: 0 -3px;
  }
  body:not(.is-editing) :is(header a.button, #content .button, #compare .button, .office-call)::before {
    inset: -65% -28%;
    transform: translateX(-110%) rotate(10deg);
    transition: transform .7s ease;
  }
  body:not(.is-editing) :is(header a.button, #content .button, #compare .button, .office-call):not(:disabled):is(:hover,:focus-visible)::before {
    animation: none;
    transform: translateX(110%) rotate(10deg);
  }
  .title-accent, body:not(.is-editing) #pricing .featured :is(h2,h3,h4,.price) { animation: ccp-shimmer 7s 1.4s ease-in-out infinite; }
  body:not(.is-editing) #pricing .plan.featured { animation: ccp-featured-glow 5s ease-in-out infinite; }
  @keyframes ccp-gradient { 0%,100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } }
  @keyframes ccp-shimmer { 0%,100% { background-position: 100% 0; } 50% { background-position: 0 0; } }
  @keyframes ccp-glow {
    0%,100% { box-shadow: 0 0 0 0 #20a6b900, 0 4px 15px #20a6b925; }
    50% { box-shadow: 0 0 0 5px #20a6b919, 0 5px 30px #20a6b963; }
  }
  @keyframes ccp-featured-glow {
    0%,100% { box-shadow: 0 0 0 1px #20a6b91c, 0 0 16px #20a6b91a; }
    50% { box-shadow: 0 0 0 3px #20a6b925, 0 0 38px #20a6b950; }
  }
}
.hero, .guide-value, #inquire { position: relative; isolation: isolate; overflow: clip; }
:is(.hero,.guide-value,#inquire)::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: -28px 0;
  pointer-events: none;
  background: linear-gradient(110deg,#d2f9fc28,transparent 72%), url('/media/agent-audience.webp') center 55% / cover;
  opacity: .17;
  transform: translateY(var(--audience-offset,0px));
}
.hero-grid, .contact { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.hero-copy, .hero-photo, .contact > div { min-width: 0; }
.hero-copy h1 { max-width: 14ch; overflow-wrap: anywhere; }
.hero-copy > .body { max-width: 44ch; }
.contact h2 { max-width: 17ch; overflow-wrap: anywhere; }
.contact > div:first-child > .body { max-width: 43ch; }
.media-channel .card-body > .body, .plan > .body { max-width: 58ch; }
.quick a {
  position: relative;
  isolation: isolate;
  min-width: 0;
  gap: .2rem;
  padding: .9rem 1.75rem .9rem .95rem;
  border-color: #70c7da66;
  background: linear-gradient(115deg,#15465a,#0c3148);
}
.quick a::after { content: '↗'; position: absolute; inset: .85rem .75rem auto auto; color: #91edf3; }
.quick a b { color: #a5f2f7; }
.quick a:is(:hover,:focus-visible) { border-color: #82e4ee; background: #195267; }
.card:is(:hover,:focus-within) { border-color: #27aebf; }
#pricing .plan:is(:hover,:focus-within) { border-color: #27aebf; }
:is(.hero-photo,.card:has(> img)) { position: relative; }
@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  :is(.hero-photo,.card:has(> img))::after {
    content: '';
    position: absolute;
    inset: 0 0 auto;
    width: 100%;
    aspect-ratio: 1.85;
    border-radius: inherit;
    pointer-events: none;
    background: linear-gradient(112deg,transparent 36%,#dcfaff78 50%,transparent 63%) 130% center / 280% 100%;
    opacity: 0;
    transition: background-position .72s ease, opacity .22s ease;
  }
  .hero-photo::after { height: 100%; aspect-ratio: auto; }
  .media-channel::after { aspect-ratio: 2.2 !important; }
  :is(.hero-photo,.card:has(> img)):hover::after { opacity: 1; background-position: -25% center; }
  .quick a::after { transition: translate .18s ease; }
  .quick a:is(:hover,:focus-visible)::after { translate: 2px -2px; }
}
.inquiry { padding: clamp(1.05rem,3vw,1.7rem); }
.inquiry .form-heading p, .form-privacy { font-size: .9rem; color: #476374; }
.inquiry fieldset { border: 0; border-top: 1px solid #c7dce1; padding: .8rem 0 .3rem; margin: 0; min-width: 0; }
.inquiry legend { font-weight: 800; padding-right: .55rem; color: #143f52; }
.inquiry .form-row { margin-bottom: .6rem; }
.inquiry .required-mark { display: inline; color: #934327; }
.inquiry select, .inquiry input, .inquiry textarea { min-height: 44px; }
@media (max-width: 760px) {
  .hero-grid, .contact { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 650px) {
  .quick a { padding: .65rem .4rem; }
  .quick a::after { display: none; }
}
:is(.hero,.guide-value,#inquire)::before {
  background: linear-gradient(110deg,#d2f9fc28,transparent 72%), var(--audience-photo,none) center var(--audience-position,center) / cover;
  opacity: var(--audience-opacity,.16);
}
.event-gallery { background: #f5fafb; color: #0c3148; padding-block: clamp(1.65rem,4vw,3.4rem); }
.gallery-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.gallery-title { font-size:clamp(1.55rem,3.6vw,2.6rem); }
.gallery-description { margin:.4rem 0 0; }
.gallery-track { display:flex; overflow:auto; scrollbar-width:thin; overscroll-behavior-inline:contain; padding: .3rem 0 .55rem; }
.gallery-set { display:flex; flex:none; align-items:center; gap:.75rem; padding-right:.75rem; }
.gallery-tile { flex:none; width:clamp(160px,23vw,310px); aspect-ratio: 1.62; padding:2px; cursor:zoom-in; border:0; border-radius:.65rem; position:relative; overflow:hidden; background:#9dc3cf; }
.gallery-tile img { width:100%; height:100%; object-fit:cover; display:block; border-radius:.52rem; }
.gallery-tile:is(:hover,:focus-visible) { background:#21a2ba; }
#gallery-dialog { width:min(950px,calc(100% - 1.4rem)); }
#gallery-dialog figure { margin:0; padding:.65rem 1rem .3rem; }
#gallery-dialog img { display:block; width:100%; max-height:66dvh; object-fit:contain; background:#0c3148; }
#gallery-caption { padding:.5rem 0; }
.gallery-navigation { display:flex; justify-content:space-between; gap:.6rem; padding:.25rem 1rem .85rem; }
.is-editing .gallery-editor { margin-top:.9rem; }
:is(.hero-photo,.card:has(> img)):hover::after { opacity:.36; }
@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine) {
  :is(.hero-photo > img,.card > img,.gallery-tile img) { transition:scale .45s ease,filter .45s ease; }
  :is(.hero-photo:hover > img,.card:hover > img,.gallery-tile:hover img) { scale:1.025; filter:brightness(1.025); }
  .gallery-tile:is(:hover,:focus-visible) { background:linear-gradient(115deg,#0c526c,#9deff4,#21a2ba,#0c526c) 0 / 250% 100%; animation:gallery-edge 1.6s ease-in-out infinite alternate; }
  .gallery-tile::after { content:''; position:absolute; inset:2px; border-radius:.52rem; pointer-events:none; background:linear-gradient(115deg,transparent 40%,#f2ffff35 50%,transparent 60%) 120% 0 / 260% 100%; opacity:0; transition:background-position .6s ease,opacity .3s ease; }
  .gallery-tile:hover::after { background-position:-25% 0; opacity:1; }
  .card:has(> img):hover { animation:photo-edge 1.25s ease-in-out infinite alternate; }
  @keyframes gallery-edge { to { background-position:100% 50%; } }
  @keyframes photo-edge { from { border-color:#21a2ba; } to { border-color:#80d9e4; } }
}
@media(max-width:650px) { .gallery-heading { align-items:flex-start; } .gallery-heading .button { font-size:.7rem; padding:.5rem; } }
#download-guide[aria-busy=true] { opacity:.65; cursor:progress; }
.pdf-status:empty { display:none; }
.pdf-status { position:fixed; top:4.25rem; right:1rem; z-index:50; margin:0; max-width:calc(100vw - 2rem); padding:.5rem .75rem; border-radius:.5rem; background:#0c3148; color:white; font-size:.85rem; }
@media (max-width:430px) {
  .bar { gap:.35rem; }
  .bar .brand img { width:82px; }
  .bar nav { gap:.25rem; font-size:.74rem; }
  .bar .icon { width:30px; }
}
#comparison > .button { margin-top: 1rem; }
