.ctg-grid,.ctg-related,.ctg-portfolio,.ctg-gallery,.ctg-hero,.ctg-list{--ctg-cream:var(--wp--preset--color--cream, #f8f4ee);--ctg-sand:var(--wp--preset--color--sand, #efe6dc);--ctg-line:var(--wp--preset--color--line, #d6c7b6);--ctg-ink:var(--wp--preset--color--ink, #26221f);--ctg-muted:var(--wp--preset--color--muted, #7a7068);--ctg-accent:var(--wp--preset--color--accent, #a6705a);--ctg-dark:var(--wp--preset--color--dark, #232120);--ctg-serif:var(--wp--preset--font-family--serif, Georgia, serif);--ctg-ease:cubic-bezier(.22, .61, .36, 1);--ctg-gap:clamp(12px, 1.6vw, 22px)}.ctg-arrow{display:inline-block;width:16px;height:10px;flex:none;transition:transform .35s var(--ctg-ease)}.ctg-eyebrow{display:inline-block;font-size:.74rem;font-weight:400;letter-spacing:.32em;text-transform:uppercase;color:var(--ctg-accent);margin-bottom:1rem}.ctg-empty{padding:24px;border:1px dashed var(--ctg-line);text-align:center;color:var(--ctg-muted)}.ctg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ctg-gap)}.ctg-related{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--ctg-gap)}.ctg-card{display:block;position:relative;overflow:hidden;background:var(--ctg-sand);color:var(--ctg-ink);text-decoration:none}.ctg-card__img{aspect-ratio:4 / 3;overflow:hidden;background:var(--ctg-line)}.ctg-related .ctg-card__img{aspect-ratio:1}.ctg-card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s var(--ctg-ease)}.ctg-card:hover .ctg-card__img img{transform:scale(1.06)}.ctg-card__label{display:flex;align-items:center;gap:14px;padding:18px 22px;font-size:.76rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase}.ctg-card:hover .ctg-arrow,.ctg-card:focus-visible .ctg-arrow{transform:translateX(6px)}.ctg-card__count{margin-left:auto;font-weight:300;letter-spacing:.12em;color:var(--ctg-muted);font-size:.7rem}.ctg-card--cta{background:var(--ctg-dark);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px, 3vw, 44px);min-height:260px}.ctg-card--cta .ctg-eyebrow{color:#d9b19c}.ctg-card--cta h3{font-family:var(--ctg-serif);font-weight:400;color:#fff;font-size:clamp(1.6rem, 2.4vw, 2.1rem);line-height:1.15;margin:0 0 .6rem}.ctg-card--cta p{color:rgb(255 255 255 / .75);font-size:.95rem;margin:0 0 1.4rem}.ctg-link{display:inline-flex;align-items:center;gap:12px;font-size:.74rem;letter-spacing:.22em;text-transform:uppercase}.ctg-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:clamp(32px, 4vw, 52px)}.ctg-filter{border:1px solid var(--ctg-line);background:#fff0;color:var(--ctg-ink);padding:10px 20px;cursor:pointer;border-radius:0;font:inherit;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;transition:all .3s var(--ctg-ease)}.ctg-filter:hover{border-color:var(--ctg-ink)}.ctg-filter.is-active{background:var(--ctg-ink);border-color:var(--ctg-ink);color:#fff}.ctg-photos{columns:3 300px;column-gap:clamp(12px, 1.4vw, 18px)}.ctg-photo{display:block;width:100%;padding:0;border:0;border-radius:0;margin:0 0 clamp(12px, 1.4vw, 18px);break-inside:avoid;overflow:hidden;position:relative;background:var(--ctg-sand);cursor:zoom-in}.ctg-photo img{width:100%;height:auto;display:block;transition:transform .9s var(--ctg-ease)}.ctg-photo::after{content:"";position:absolute;inset:0;background:#fff0;transition:background .4s var(--ctg-ease)}.ctg-photo:hover img{transform:scale(1.04)}.ctg-photo:hover::after{background:rgb(24 21 19 / .12)}.ctg-photo.is-hidden{display:none}.ctg-lightbox{position:fixed;inset:0;z-index:100000;background:rgb(20 17 15 / .95);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s}.ctg-lightbox.is-open{opacity:1;visibility:visible}.ctg-lightbox__img{max-width:min(92vw, 1600px);max-height:84vh;object-fit:contain;box-shadow:0 30px 80px rgb(0 0 0 / .4)}.ctg-lightbox__btn{position:absolute;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;padding:0;background:#fff0;border:1px solid rgb(255 255 255 / .35);color:#fff;cursor:pointer;transition:background .3s,border-color .3s}.ctg-lightbox__btn:hover{background:rgb(255 255 255 / .12);border-color:#fff}.ctg-lightbox__btn svg{width:20px;height:20px}.ctg-lightbox__close{top:22px;right:22px}.ctg-lightbox__prev{left:22px;top:50%;transform:translateY(-50%)}.ctg-lightbox__next{right:22px;top:50%;transform:translateY(-50%)}.ctg-lightbox__count{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);color:rgb(255 255 255 / .75);font-size:.74rem;letter-spacing:.24em}.ctg-hero{position:relative;overflow:hidden;color:#fff;min-height:clamp(360px, 52vh, 540px);display:flex;align-items:flex-end;margin-top:0!important}.ctg-hero__media{position:absolute;inset:0}.ctg-hero__media img{width:100%;height:100%;object-fit:cover;display:block}.ctg-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgb(20 17 15 / .74) 0%,rgb(20 17 15 / .38) 55%,rgb(20 17 15 / .16) 100%)}.ctg-hero__content{position:relative;z-index:2;width:100%;max-width:var(--wp--style--global--wide-size,1240px);margin:0 auto;padding:0 var(--wp--style--root--padding-left,clamp(20px, 4vw, 48px)) clamp(44px, 7vw, 80px)}.ctg-hero .ctg-eyebrow{color:#f0d9c9}.ctg-hero h1{color:#fff;margin:0 0 .2em;font-family:var(--ctg-serif);font-weight:400;font-size:var(--wp--preset--font-size--huge,clamp(2.6rem, 5.6vw, 4.6rem));line-height:1.1}.ctg-hero p{max-width:620px;font-size:1.05rem;margin:0;opacity:.95}.ctg-hero__crumb{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;margin-bottom:1rem;opacity:.9}.ctg-hero__crumb a{color:inherit;text-decoration:none}.ctg-hero__crumb a:hover{text-decoration:underline}.ctg-hero__crumb span{margin:0 8px;opacity:.7}.ctg-list{list-style:none;margin:0;padding:0}.ctg-list li{margin:0 0 8px}.ctg-list a{color:inherit;text-decoration:none}.ctg-copyright{margin:0}@media (max-width:1080px){.ctg-related{grid-template-columns:repeat(2,1fr)}}@media (max-width:960px){.ctg-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.ctg-grid{grid-template-columns:1fr}.ctg-lightbox__prev{left:8px}.ctg-lightbox__next{right:8px}.ctg-lightbox__btn{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.ctg-card__img img,.ctg-photo img,.ctg-lightbox,.ctg-arrow{transition:none}}