.community-page,.community-single{padding:0 0 88px;background:#fff;color:var(--ink)}
.community-shell{width:min(1280px,calc(100% - 64px));margin:0 auto}
.community-hero{position:relative;display:flex;align-items:flex-end;min-height:390px;overflow:hidden;background:#272727}
.community-hero:after,.community-single__hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.26) 66%,rgba(0,0,0,.08));pointer-events:none}
.community-hero>img,.community-single__hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.community-hero__overlay{position:relative;z-index:1;width:min(1120px,calc(100% - 80px));margin:0 auto;padding:76px 0;color:#fff}
.community-hero__overlay p,.community-single__hero>div>p{margin:0 0 12px;color:var(--orange);font-size:14px;font-weight:700;letter-spacing:2.2px}
.community-hero__overlay h1{max-width:780px;margin:0;font-size:clamp(42px,5vw,68px);font-weight:600;line-height:1.03}
.community-intro{max-width:860px;margin:62px auto 46px;text-align:center}
.community-intro>p{margin:0 0 12px;color:#666;font-size:13px;font-weight:700;letter-spacing:2.3px}
.community-intro h2{margin:0;font-size:clamp(30px,3.5vw,46px);font-weight:600;line-height:1.12}
.community-intro>i{display:block;width:48px;height:3px;margin:20px auto;background:var(--orange)}
.community-intro>div{margin:0 auto;color:#555;font-size:17px;line-height:1.65}
.community-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}
.community-card{display:flex;min-width:0;flex-direction:column;border:1px solid #e3e3e3;background:#fff;box-shadow:0 9px 24px rgba(0,0,0,.055);transition:transform .22s ease,box-shadow .22s ease}
.community-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(0,0,0,.11)}
.community-card__image{display:block;position:relative;aspect-ratio:1.48;overflow:hidden;background:#f1f1f1}
.community-card__image:after{content:"";position:absolute;inset:auto 0 0;height:36%;background:linear-gradient(transparent,rgba(0,0,0,.12));pointer-events:none}
.community-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.community-card:hover .community-card__image img{transform:scale(1.035)}
.community-card__body{display:flex;flex:1;flex-direction:column;padding:23px 23px 25px}
.community-card h2{margin:0 0 13px;font-size:21px;font-weight:650;line-height:1.22}
.community-card h2 a{color:inherit}
.community-card__body>p{display:-webkit-box;min-height:4.65em;margin:0 0 22px;overflow:hidden;color:#606060;font-size:15px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.community-card__more{display:inline-flex;align-items:center;gap:10px;margin-top:auto;color:var(--orange);font-size:14px;font-weight:700}
.community-card__more span{font-size:20px;transition:transform .2s ease}
.community-card__more:hover span{transform:translateX(4px)}
.community-empty{padding:52px 20px;text-align:center;color:#666}
.community-pagination{display:flex;justify-content:center;gap:8px;margin-top:48px}
.community-pagination .page-numbers{display:grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border:1px solid #ddd;color:#222}
.community-pagination .page-numbers.current,.community-pagination .page-numbers:hover{border-color:var(--orange);background:var(--orange);color:#fff}
.community-single__article{padding-bottom:20px}
.community-single__hero{position:relative;display:flex;align-items:flex-end;min-height:460px;overflow:hidden;background:#272727}
.community-single__hero>div{position:relative;z-index:1;width:min(1040px,calc(100% - 80px));margin:0 auto;padding:72px 0;color:#fff}
.community-single__hero h1{max-width:900px;margin:0;font-size:clamp(36px,4.4vw,60px);font-weight:600;line-height:1.08}
.community-single__content{width:min(860px,calc(100% - 48px));margin:54px auto 40px;color:#303030;font-size:17px;line-height:1.75}
.community-single__content p{margin:0 0 24px}
.community-single__content p:first-child{font-size:19px;line-height:1.65}
.community-single__content blockquote.community-quote{position:relative;margin:34px 0;padding:27px 32px 25px 82px;border-left:3px solid var(--orange);background:#f7f7f7;color:#303030}
.community-single__content blockquote.community-quote:before{content:"“";position:absolute;top:10px;left:25px;color:var(--orange);font-family:Georgia,serif;font-size:64px;line-height:1}
.community-single__content blockquote.community-quote p{margin:0 0 12px;font-size:19px;font-weight:500;line-height:1.6}
.community-single__content blockquote.community-quote cite{display:block;color:#666;font-size:14px;font-style:normal;font-weight:700}
.community-single__content a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}
.community-video{width:min(1000px,calc(100% - 48px));margin:0 auto 44px;aspect-ratio:16/9;background:#111}
.community-video iframe{display:block;width:100%;height:100%;border:0}
.community-gallery{width:min(1120px,calc(100% - 48px));margin:0 auto 44px}
.community-gallery h2{margin:0 0 20px;font-size:clamp(23px,2.6vw,32px);font-weight:650;line-height:1.2}
.community-gallery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px}
.community-gallery__grid a{display:block;overflow:hidden;background:#f4f4f4;line-height:0}
.community-gallery__grid img{display:block;width:100%;height:auto;transition:transform .25s ease}
.community-gallery__grid a:hover img{transform:scale(1.025)}
.community-gallery__grid a:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.community-lightbox{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:58px 74px;border:0;background:rgba(18,18,18,.98);color:#fff}
.community-lightbox::backdrop{background:rgba(0,0,0,.86)}
.community-lightbox[open]{display:grid;place-items:center}
.community-lightbox figure{display:grid;place-items:center;max-width:100%;max-height:100%;margin:0;text-align:center}
.community-lightbox figure img{display:block;max-width:100%;width:auto;max-height:calc(100dvh - 130px);object-fit:contain;margin:auto}
.community-lightbox figcaption{padding-top:12px;color:#eee;font-size:14px}
.community-lightbox button{position:absolute;z-index:1;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(32,32,32,.82);color:#fff;font-size:27px;line-height:1;cursor:pointer}
.community-lightbox button:hover{border-color:var(--orange);background:var(--orange)}
.community-lightbox button:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.community-lightbox__close{top:18px;right:20px}
.community-lightbox__previous{left:18px;top:calc(50% - 24px)}
.community-lightbox__next{right:18px;top:calc(50% - 24px)}
.community-single__back{display:inline-flex;margin-left:max(24px,calc((100% - 860px)/2));color:var(--orange);font-size:15px;font-weight:700}
@media(max-width:960px){
  .community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .community-hero{min-height:350px}
}
@media(max-width:700px){
  .community-page,.community-single{padding-bottom:56px}
  .community-shell{width:calc(100% - 32px)}
  .community-hero{min-height:430px;margin-right:calc((100% - 100vw)/2);margin-left:calc((100% - 100vw)/2)}
  .community-hero__overlay{width:calc(100% - 40px);padding:52px 0}
  .community-hero__overlay h1{font-size:39px}
  .community-intro{margin:44px auto 34px}
  .community-intro h2{font-size:30px}
  .community-intro>div{font-size:16px}
  .community-grid{grid-template-columns:1fr;gap:22px}
  .community-card__body{padding:20px}
  .community-single__hero{min-height:440px;margin-right:calc((100% - 100vw)/2);margin-left:calc((100% - 100vw)/2)}
  .community-single__hero>div{width:calc(100% - 40px);padding:48px 0}
  .community-single__hero h1{font-size:34px}
  .community-single__content{width:100%;margin:38px auto 30px;font-size:16px}
  .community-single__content p:first-child{font-size:17px}
  .community-single__content blockquote.community-quote{margin:26px 0;padding:24px 20px 22px 58px}
  .community-single__content blockquote.community-quote:before{left:16px;font-size:52px}
  .community-single__content blockquote.community-quote p{font-size:17px}
  .community-gallery{width:100%;margin:0 auto 32px}
  .community-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .community-lightbox{padding:62px 14px 82px}
  .community-lightbox figure img{max-height:calc(100dvh - 170px)}
  .community-lightbox__previous,.community-lightbox__next{top:auto;bottom:18px}
  .community-single__back{margin-left:0}
}
