/* Illustrations and their flip interaction belong only to the service catalogue. */
#service-entry-tiles>h3{margin:0;padding:1.45rem 1.45rem .65rem;font-size:1.1rem;}
#service-entry-tiles>p{margin:0;padding:0 1.45rem 1.3rem;line-height:1.65;}
#service-entry-tiles>p:empty{display:none;}
#service-entry-tiles>.service-catalog-pages{display:flex;flex-wrap:wrap;gap:.6rem;padding:0 1.45rem 1rem;}
#service-entry-tiles [data-service-tile-items]{
 display:grid;
 grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));
 align-items:stretch;
 gap:1.3rem;
 padding:1.45rem;
}
.service-card{
 --tile-art-ink:var(--ink);
 --tile-art-accent:var(--teal);
 --tile-art-soft:color-mix(in srgb,var(--teal) 13%,var(--white));
 --tile-art-highlight:var(--lime);
 --tile-art-paper:var(--white);
 --tile-art-detail:color-mix(in srgb,var(--teal) 48%,var(--white));
 display:flex;
 flex-direction:column;
 min-width:0;
 color:var(--ink);
 background:var(--white);
 border:1px solid var(--line);
 border-radius:1rem;
 box-shadow:0 .3rem 1.3rem color-mix(in srgb,var(--ink) 7%,transparent);
}
.service-card-title{
 padding:1.25rem 1.25rem 1rem;
 margin:0;
 font-size:1.075rem;
 font-weight:650;
 line-height:1.45;
 overflow-wrap:anywhere;
}
.service-card-stage{perspective:75rem;margin-top:auto;min-width:0;}
.service-card-rotor{
 display:grid;
 min-width:0;
 transform-style:preserve-3d;
 transition:transform .48s cubic-bezier(.22,.68,.18,1);
}
.service-card.is-flipped .service-card-rotor{transform:rotateY(180deg);}
.service-card-front,.service-card-back{
 grid-area:1 / 1;
 min-width:0;
 min-height:12.5rem;
 backface-visibility:hidden;
 -webkit-backface-visibility:hidden;
 border-top:1px solid var(--line);
 border-bottom:1px solid var(--line);
}
.service-card-front{
 display:grid;
 place-items:center;
 background:linear-gradient(135deg,var(--tile-art-paper),var(--tile-art-soft));
}
.service-card-front svg{display:block;width:100%;height:auto;max-height:18rem;}
.service-card-back{
 display:flex;
 flex-direction:column;
 justify-content:center;
 padding:1.4rem;
 background:var(--paper);
 transform:rotateY(180deg);
 overflow-wrap:anywhere;
}
.service-card-kicker{font-size:.8rem;font-weight:650;color:var(--teal);line-height:1.6;margin-bottom:.7rem;}
.service-card-back p{font-size:1rem;line-height:1.65;margin:0;white-space:pre-line;}
.service-card-actions{
 display:flex;
 flex-wrap:wrap;
 align-items:center;
 justify-content:space-between;
 gap:.6rem;
 padding:1rem;
}
.service-card-info{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 flex-wrap:wrap;
 gap:.45rem;
 min-height:3.15rem;
 min-width:0;
 max-width:100%;
 padding:.55rem .4rem;
 border:1px solid transparent;
 border-radius:.4rem;
 background:transparent;
 color:var(--ink);
 font-size:.875rem;
 line-height:1.4;
 overflow-wrap:anywhere;
}
.service-card-info-symbol{
 display:inline-grid;
 place-items:center;
 width:1.15em;
 height:1.15em;
 border:1px solid currentColor;
 border-radius:50%;
 font-family:Georgia,serif;
 font-weight:bold;
}
.service-card-info[aria-expanded=true]{color:var(--teal);}
.service-card .service-card-open{
 min-width:0;
 max-width:100%;
 min-height:3.15rem;
 padding:.65rem .85rem;
 line-height:1.4;
 font-size:.875rem;
 overflow-wrap:anywhere;
 text-align:center;
 background:var(--white);
 color:var(--ink);
 border-color:var(--line);
}
.service-card-open span{font-size:1.2em;}
.service-card :is(button,a):focus-visible{outline:3px solid var(--teal);outline-offset:3px;}
html[data-theme=dark] .service-card{
 --tile-art-soft:color-mix(in srgb,var(--teal) 10%,var(--white));
 --tile-art-highlight:color-mix(in srgb,var(--lime) 76%,var(--white));
 --tile-art-detail:color-mix(in srgb,var(--teal) 55%,var(--white));
}
html[data-theme=contrast] .service-card{
 --tile-art-soft:var(--paper);
 --tile-art-detail:var(--teal);
 --tile-art-highlight:var(--paper);
 box-shadow:none;
}
html[data-single-column=true] #service-entry-tiles [data-service-tile-items]{grid-template-columns:minmax(0,1fr);}
html[data-spacing=spacious] .service-card-actions{gap:1rem;padding:1.3rem;}
html[data-spacing=spacious] .service-card :is(button,a){min-height:3.75rem;}
html[data-reduce-motion=true] .service-card-rotor,
html[data-reduce-motion=true] .service-card.is-flipped .service-card-rotor{transition:none;transform:none;}
html[data-reduce-motion=true] .service-card-back{transform:none;visibility:hidden;}
html[data-reduce-motion=true] .service-card.is-flipped .service-card-back{visibility:visible;}
html[data-reduce-motion=true] .service-card.is-flipped .service-card-front{visibility:hidden;}
@media(prefers-reduced-motion:reduce){
 .service-card-rotor,.service-card.is-flipped .service-card-rotor{transition:none;transform:none;}
 .service-card-back{transform:none;visibility:hidden;}
 .service-card.is-flipped .service-card-back{visibility:visible;}
 .service-card.is-flipped .service-card-front{visibility:hidden;}
}
@media(forced-colors:active){
 .service-card{
  --tile-art-ink:CanvasText;--tile-art-accent:LinkText;--tile-art-soft:Canvas;
  --tile-art-highlight:Highlight;--tile-art-paper:Canvas;--tile-art-detail:CanvasText;
  background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none;
 }
 .service-card-front svg{forced-color-adjust:none;}
 .service-card-front,.service-card-back{background:Canvas;color:CanvasText;border-color:CanvasText;}
 .service-card-kicker{color:CanvasText;}
 .service-card-info,.service-card .service-card-open{border:1px solid ButtonText;color:ButtonText;background:ButtonFace;}
 .service-card :is(button,a):focus-visible{outline-color:Highlight;}
}
@media print{
 .service-card-rotor,.service-card.is-flipped .service-card-rotor{transform:none;}
 .service-card-front{display:none;}
 .service-card-back{transform:none;visibility:visible!important;}
 .service-card-actions{display:none;}
 .service-card{break-inside:avoid;box-shadow:none;}
}
