.elementor-kit-18{--e-global-color-primary:#212121;--e-global-color-secondary:#498FCC;--e-global-color-text:#000000;--e-global-color-accent:#29292A;--e-global-color-0fba91c:#FAB89F;--e-global-color-81e8884:#F7F8FA;--e-global-color-d4f3030:#D3D3D9;--e-global-color-9aa0e29:#29292A00;--e-global-color-e0f9d43:#FFFFFF;--e-global-color-3b01a33:#848484;--e-global-color-3ff2a02:#D3D3D975;--e-global-typography-primary-font-family:"Prata";--e-global-typography-primary-font-size:55px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-text-transform:capitalize;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:2px;--e-global-typography-primary-word-spacing:0px;--e-global-typography-secondary-font-family:"Prata";--e-global-typography-secondary-font-size:32px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:capitalize;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:1.4em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-secondary-word-spacing:0px;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:300;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-text-word-spacing:0px;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:1px;--e-global-typography-accent-word-spacing:0px;--e-global-typography-f3e9c76-font-family:"Prata";--e-global-typography-f3e9c76-font-size:5.2vw;--e-global-typography-f3e9c76-font-weight:400;--e-global-typography-f3e9c76-text-transform:capitalize;--e-global-typography-f3e9c76-font-style:normal;--e-global-typography-f3e9c76-text-decoration:none;--e-global-typography-f3e9c76-line-height:1em;--e-global-typography-f3e9c76-letter-spacing:10px;--e-global-typography-f3e9c76-word-spacing:0px;--e-global-typography-d097826-font-family:"Roboto";--e-global-typography-d097826-font-size:16px;--e-global-typography-d097826-font-weight:400;--e-global-typography-d097826-text-transform:uppercase;--e-global-typography-d097826-font-style:normal;--e-global-typography-d097826-text-decoration:none;--e-global-typography-d097826-line-height:1.2em;--e-global-typography-d097826-letter-spacing:6px;--e-global-typography-d097826-word-spacing:0px;--e-global-typography-043b86e-font-family:"Prata";--e-global-typography-043b86e-font-size:18px;--e-global-typography-043b86e-font-weight:400;--e-global-typography-043b86e-text-transform:capitalize;--e-global-typography-043b86e-font-style:normal;--e-global-typography-043b86e-text-decoration:none;--e-global-typography-043b86e-line-height:1em;--e-global-typography-043b86e-letter-spacing:1.1px;--e-global-typography-043b86e-word-spacing:0px;--e-global-typography-2a4aaa0-font-family:"Prata";--e-global-typography-2a4aaa0-font-size:32px;--e-global-typography-2a4aaa0-font-weight:400;--e-global-typography-2a4aaa0-text-transform:none;--e-global-typography-2a4aaa0-font-style:normal;--e-global-typography-2a4aaa0-text-decoration:none;--e-global-typography-2a4aaa0-line-height:1.4em;--e-global-typography-2a4aaa0-letter-spacing:0px;--e-global-typography-2a4aaa0-word-spacing:0px;background-color:var( --e-global-color-e0f9d43 );}.elementor-kit-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{background-color:#02010100;font-family:"Prata", Sans-serif;text-transform:uppercase;text-decoration:none;letter-spacing:1.4px;color:var( --e-global-color-primary );border-style:solid;border-width:0px 1px 0px 1px;border-color:var( --e-global-color-accent );border-radius:0px 0px 0px 0px;padding:15px 8px 15px 8px;}.elementor-kit-18 button:hover,.elementor-kit-18 button:focus,.elementor-kit-18 input[type="button"]:hover,.elementor-kit-18 input[type="button"]:focus,.elementor-kit-18 input[type="submit"]:hover,.elementor-kit-18 input[type="submit"]:focus,.elementor-kit-18 .elementor-button:hover,.elementor-kit-18 .elementor-button:focus{background-color:#02010100;color:var( --e-global-color-secondary );border-style:solid;border-width:0px 1px 0px 1px;border-color:var( --e-global-color-secondary );}.elementor-kit-18 e-page-transition{background-color:#FFBC7D;}.site-header{background-color:var( --e-global-color-secondary );padding-inline-end:5%;padding-inline-start:5%;}.site-footer{background-color:var( --e-global-color-secondary );padding-inline-end:5%;padding-inline-start:5%;}.elementor-kit-18 a{color:var( --e-global-color-text );font-family:"Roboto", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:underline;line-height:1.5em;letter-spacing:0px;word-spacing:0px;}.elementor-kit-18 a:hover{color:var( --e-global-color-primary );text-decoration:none;}.elementor-kit-18 h1{font-family:"Prata", Sans-serif;}.elementor-kit-18 h2{font-family:"Prata", Sans-serif;font-size:50px;text-transform:capitalize;line-height:1.4em;letter-spacing:10px;}.elementor-kit-18 h3{color:var( --e-global-color-text );font-family:"Prata", Sans-serif;font-size:32px;line-height:1.4em;}.elementor-kit-18 h4{font-family:"Prata", Sans-serif;line-height:1.4em;}.elementor-kit-18 h5{font-family:"Prata", Sans-serif;line-height:1.4em;}.elementor-kit-18 h6{font-family:"Prata", Sans-serif;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}.e-con{--container-max-width:1600px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding .site-logo img{width:230px;max-width:230px;}.site-header .site-navigation ul.menu > li > a{color:var( --e-global-color-e0f9d43 );}.site-header .site-navigation ul.menu > li.menu-item-has-children::after{color:var( --e-global-color-e0f9d43 );}.site-header .site-navigation .menu li{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.site-footer .site-branding .site-logo img{width:230px;max-width:230px;}.site-footer .copyright p{color:var( --e-global-color-0fba91c );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}@media(max-width:1024px){.elementor-kit-18{--e-global-typography-primary-font-size:42px;--e-global-typography-secondary-font-size:22px;--e-global-typography-text-font-size:14px;--e-global-typography-f3e9c76-font-size:6.9vw;--e-global-typography-f3e9c76-letter-spacing:5px;--e-global-typography-d097826-font-size:14px;--e-global-typography-043b86e-font-size:16px;--e-global-typography-2a4aaa0-font-size:22px;}.elementor-kit-18 a{font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}.site-header{padding-inline-end:10%;padding-inline-start:10%;}.site-header .site-navigation .menu li{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.site-footer{padding-inline-end:10%;padding-inline-start:10%;}.site-footer .copyright p{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}}@media(max-width:767px){.elementor-kit-18{--e-global-typography-primary-font-size:28px;--e-global-typography-secondary-font-size:18px;--e-global-typography-accent-font-size:11px;--e-global-typography-f3e9c76-font-size:40px;--e-global-typography-f3e9c76-line-height:1.1em;--e-global-typography-d097826-font-size:12px;--e-global-typography-d097826-line-height:1.4em;--e-global-typography-043b86e-line-height:1.5em;--e-global-typography-2a4aaa0-font-size:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}.site-header{padding-inline-end:5%;padding-inline-start:5%;}.site-header .site-branding .site-logo img{width:200px;max-width:200px;}.site-header .site-navigation .menu li{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );word-spacing:var( --e-global-typography-accent-word-spacing );}.site-footer{padding-inline-end:5%;padding-inline-start:5%;}.site-footer .copyright p{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}}
/* Start custom CSS *//* ============================================================
   ART SANCTUARY — PORTLAND PROJECT
   GLOBAL STYLES — paste this block ONCE at the top of the page
   Colors are literal hex (no CSS variables) so borders render even if the
   wrapper div gets stripped. Every .elementor-kit-18 still starts with .asp.
   Small grey text is #727272 rather than palette #848484: #848484 measures
   3.74:1 on white, below the 4.5:1 WCAG AA minimum. #727272 is the lightest
   neutral that passes on both white and the #F7F8FA tint.
   Table cell backgrounds are !important: something on the site sets th to
   rgba(128,128,128,0.07) with !important, which rendered the white header
   text at 1.07:1 — invisible. Hover states are pinned for the same reason.
   ============================================================ */

/* Fonts: your site already loads Prata + Roboto.
   If they look wrong, uncomment the next line.
@import url('https://fonts.googleapis.com/css2?family=Prata&family=Roboto:wght@300;400;700&display=swap');
*/

.asp{
  color:#000000;
  font:300 16px/1.5 Roboto,system-ui,-apple-system,sans-serif;
}
.asp *{box-sizing:border-box}
.asp h1,.asp h2,.asp h3,.asp h4,.asp p,.asp ul,.asp li{margin:0;padding:0}
.asp p{margin:0 0 15px}
.asp p:last-child{margin-bottom:0}
.asp a{color:inherit}
.asp b,.asp strong{font-weight:700;color:#29292A}
.asp img{max-width:100%;display:block}

/* section shells */
.asp-sec{padding:56px 4%}
.asp-tint{background:#F7F8FA}
.asp-mid{max-width:1320px;margin:0 auto}
.asp-c{text-align:center}
.asp-sp{height:44px}
.asp-sp-s{height:24px}

/* type */
.asp .asp-h1{font:400 clamp(34px,5.2vw,68px)/1.05 Prata,Georgia,serif;letter-spacing:10px;
  text-transform:capitalize;color:#000000;text-align:center}
.asp .asp-h2{font:400 clamp(26px,3.5vw,44px)/1.35 Prata,Georgia,serif;letter-spacing:9px;
  text-transform:capitalize;color:#000000;text-align:center}
.asp .asp-h4{font:400 21px/1.35 Prata,Georgia,serif;letter-spacing:1.1px;color:#000000}
.asp .asp-kicker{font:400 clamp(12px,1.2vw,15px)/1.4 Roboto,sans-serif;letter-spacing:6px;
  text-transform:uppercase;color:#727272;margin-top:20px;text-align:center}
.asp .asp-kicker i{font-style:normal;color:#D3D3D9;margin:0 14px}
.asp .asp-eyebrow{font:400 12px/1.4 Roboto,sans-serif;letter-spacing:4px;text-transform:uppercase;
  color:#727272;text-align:center;margin-bottom:14px}
.asp .asp-lead{font:300 clamp(17px,1.6vw,20px)/1.6 Roboto,sans-serif;color:#000000}
.asp .asp-note{font:300 13.5px/1.6 Roboto,sans-serif;color:#727272;margin-top:12px}

.asp-btnrow{display:flex;gap:26px;flex-wrap:wrap;align-items:center;justify-content:center}

/* stat strip */
.asp-stats{display:flex;flex-wrap:wrap;border-top:1px solid #D3D3D9 !important;
  border-bottom:1px solid #D3D3D9 !important}
.asp-stats>div{padding:24px 20px;text-align:center;flex:1 1 150px;
  border-right:1px solid #D3D3D9 !important}
.asp-stats>div:last-child{border-right:0 !important}
.asp-stats .asp-n{font:400 clamp(22px,2.2vw,33px)/1.1 Prata,Georgia,serif;
  color:#000000;letter-spacing:1px;white-space:nowrap}
.asp-stats .asp-l{font:400 11.5px/1.55 Roboto,sans-serif;letter-spacing:1.4px;
  text-transform:uppercase;color:#727272;margin:11px auto 0;max-width:26ch}

/* cards + grids */
.asp-g2{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.asp-card{border:1px solid #D3D3D9 !important;padding:30px 28px;background:#fff !important}
.asp-card .asp-role{font:400 11.5px/1.4 Roboto,sans-serif;letter-spacing:3px;
  text-transform:uppercase;color:#727272}
.asp-card .asp-h4{margin:9px 0 12px}
.asp-card p{font-size:15px}
.asp .asp-price{margin-top:16px;font:700 13px/1.5 Roboto,sans-serif;letter-spacing:1.5px;
  text-transform:uppercase;color:#29292A}

/* photo slots */
.asp-colhead{font:400 11.5px/1.4 Roboto,sans-serif;letter-spacing:3px;text-transform:uppercase;
  color:#727272;margin-bottom:14px;text-align:center}
.asp-ph{border:1px dashed #D3D3D9 !important;height:300px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;padding:24px;background:#F7F8FA}
.asp-ph b{font:400 16px/1.4 Prata,Georgia,serif;letter-spacing:1px;color:#000000;
  margin-bottom:6px;display:block}
.asp-ph span{font:300 13px/1.5 Roboto,sans-serif;color:#727272;max-width:34ch}
.asp .asp-img{width:100%;height:300px;object-fit:cover}
.asp-cap{font:400 11px/1.5 Roboto,sans-serif;letter-spacing:2px;text-transform:uppercase;
  color:#727272;margin-top:9px;text-align:center}
/* 2x2 photo grid inside each column */
.asp-pgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.asp .asp-img-s{width:100%;height:200px;object-fit:cover}
.asp-pgrid .asp-cap{font-size:10.5px;letter-spacing:1.2px;margin-top:7px}

/* tables */
.asp table{width:100%;border-collapse:collapse;font-size:15px;background:transparent}
.asp th{background-color:#29292A !important;color:#fff !important;
  font:400 11.5px/1.4 Roboto,sans-serif;letter-spacing:2px;text-transform:uppercase;
  text-align:left;padding:13px 16px;border:0}
.asp td{border:0;border-bottom:1px solid #D3D3D9 !important;padding:13px 16px;vertical-align:top;
  background-color:#fff !important}
.asp tr:nth-child(even) td{background-color:#F7F8FA !important}
.asp td.asp-k{font-weight:700;color:#29292A;width:230px}
.asp td.asp-amt{text-align:right;white-space:nowrap;font-weight:700;color:#29292A;width:130px}
.asp tr.asp-total td{background-color:#29292A !important;color:#fff !important;
  font-weight:700;border-bottom:0}
/* pin the hover state so no theme rule can repaint a cell mid-read */
.asp tr:hover th{background-color:#29292A !important;color:#fff !important}
.asp tr:hover td{background-color:#fff !important}
.asp tr:nth-child(even):hover td{background-color:#F7F8FA !important}
.asp tr.asp-total:hover td{background-color:#29292A !important;color:#fff !important}

/* "what we're raising" box */
.asp-raise{border:1px solid #D3D3D9 !important;background:#fff !important;padding:30px 28px}
.asp-raise-h{font:400 11.5px/1.4 Roboto,sans-serif;letter-spacing:3px;text-transform:uppercase;
  color:#727272;margin-bottom:18px}
.asp-raise-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;
  padding:14px 0;border-bottom:1px solid #D3D3D9 !important;font-size:16px}
.asp-raise-row b{font:700 18px/1.3 Roboto,sans-serif;white-space:nowrap}
.asp-raise-tot{border-bottom:0 !important;border-top:2px solid #29292A !important;margin-top:4px;padding-top:16px}
.asp-raise-tot span{font-weight:700;color:#29292A}
.asp-raise-tot b{font:400 30px/1.1 Prata,Georgia,serif;letter-spacing:1px;color:#29292A}

/* dark band */
.asp-dark{background:#29292A !important;color:#fff !important}
.asp-dark p,.asp-dark .asp-lead{color:#CFCFCF !important}       /* 9.3:1  */
.asp-dark b,.asp-dark strong{color:#fff !important}             /* 14.5:1 */
.asp-dark .asp-h2{color:#fff !important}                        /* 14.5:1 */
.asp-dark .asp-eyebrow{color:#FAB89F !important}                /* 8.6:1  Light Orange */
.asp-dark .asp-stats,.asp-dark .asp-stats>div{border-color:rgba(255,255,255,.28) !important}
.asp-dark .asp-stats .asp-n{color:#fff !important}              /* 14.5:1 */
.asp-dark .asp-stats .asp-l{color:#E0E0E0 !important}           /* 11.0:1 */

@media(max-width:900px){
  .asp-sec{padding:40px 5%}
  .asp .asp-h1{letter-spacing:5px}
  .asp .asp-h2{letter-spacing:5px}
}
@media(max-width:640px){
  .asp-g2{grid-template-columns:1fr}
  .asp-stats>div{flex:1 1 100%;border-right:0 !important;
    border-bottom:1px solid #D3D3D9 !important}
  .asp-stats>div:last-child{border-bottom:0 !important}
  .asp td.asp-k{width:auto}
  .asp-ph,.asp .asp-img{height:230px}
  .asp-pgrid{gap:12px}
  .asp .asp-img-s{height:140px}
}

/* ============ added for the Kickball page ============ */

/* three-column grid */
.asp-g3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

/* "more" link inside a card */
.asp .asp-go{display:inline-block;margin-top:15px;font:700 12px/1.4 Roboto,sans-serif;
  letter-spacing:2px;text-transform:uppercase;color:#29292A;text-decoration:none;
  border-bottom:1px solid #FAB89F;padding-bottom:3px}
.asp .asp-go:hover{border-bottom-color:#29292A}

/* inline links in body copy */
.asp .asp-link{color:#29292A;text-decoration:none;border-bottom:1px solid #FAB89F}
.asp .asp-link:hover{border-bottom-color:#29292A}

/* FAQ list */
.asp-faq{border-top:1px solid #D3D3D9 !important}
.asp-faq>div{border-bottom:1px solid #D3D3D9 !important;padding:18px 2px}
.asp-faq b{display:block;font:700 13.5px/1.5 Roboto,sans-serif;letter-spacing:1.4px;
  text-transform:uppercase;color:#29292A;margin-bottom:7px}
.asp-faq span{font-size:15.5px;color:#000000}

/* a single emphasised fact line, e.g. the date under the hero */
.asp .asp-when{font:400 clamp(15px,1.5vw,18px)/1.6 Roboto,sans-serif;color:#29292A;text-align:center}
.asp .asp-when b{font-weight:700}

@media(max-width:980px){ .asp-g3{grid-template-columns:1fr 1fr} }
@media(max-width:640px){ .asp-g3{grid-template-columns:1fr} }

/* ============ FAQ accordion (click to reveal) ============ */
/* Native <details>/<summary> — no JavaScript. Keyboard and screen-reader
   support comes free from the browser. */
.asp-faq details{border-bottom:1px solid #D3D3D9 !important}
.asp-faq summary{cursor:pointer;position:relative;list-style:none;
  padding:17px 40px 17px 2px;
  font:700 13.5px/1.5 Roboto,sans-serif;letter-spacing:1.4px;
  text-transform:uppercase;color:#29292A}
.asp-faq summary::-webkit-details-marker{display:none}
.asp-faq summary::marker{content:""}
.asp-faq summary:hover{color:#000000}
.asp-faq summary:focus-visible{outline:2px solid #498FCC;outline-offset:2px}
.asp-faq summary::after{content:"+";position:absolute;right:8px;top:50%;
  transform:translateY(-50%);font:400 21px/1 Roboto,sans-serif;color:#727272}
.asp-faq details[open] summary::after{content:"\2013"}
.asp-faq details[open] summary{color:#000000}
.asp-faq .asp-a{padding:0 40px 20px 2px;font-size:15.5px;color:#000000}
.asp-faq .asp-a p{margin:0 0 12px}
.asp-faq .asp-a p:last-child{margin-bottom:0}
/* printing: reveal every answer */
@media print{ .asp-faq .asp-a{display:block !important} }

/* ============ buttons ============ */
.asp .asp-btn,
.asp .asp-btn-p,
.asp .asp-btn-s{
  position:relative;display:inline-block;background:transparent;
  border:0;border-radius:0;padding:13px 24px;
  font:400 clamp(15px,1.5vw,18px)/1.25 Prata,Georgia,serif;
  letter-spacing:1.6px;text-transform:uppercase;text-decoration:none;
  color:#29292A;transition:color .16s ease}
.asp .asp-btn::before,
.asp .asp-btn::after{content:"";position:absolute;top:0;bottom:0;width:1px;
  background:#29292A;transition:width .16s ease,background-color .16s ease}
.asp .asp-btn::before{left:0}
.asp .asp-btn::after{right:0}
.asp .asp-btn:hover{opacity:1;color:#000000}
.asp .asp-btn:hover::before,
.asp .asp-btn:hover::after{width:4px;background:#000000}
.asp .asp-btn:focus-visible{outline:2px solid #498FCC;outline-offset:3px}
.asp .asp-btn-p::before,
.asp .asp-btn-p::after{width:2px}
@media(prefers-reduced-motion:reduce){
  .asp .asp-btn,
  .asp .asp-btn::before,
  .asp .asp-btn::after{transition:none}
}/* End custom CSS */