/* House of Reformer — Classes / [hor_categories] v0.68.0 */
body.hor-has-classes-page { background:#faf6f1 !important; }
body.hor-has-classes-page .page-header { display:none !important; }
body.hor-has-classes-page .page-content,
body.hor-has-classes-page .entry-content { background:transparent !important; padding-top:0 !important; }

.hor-class-types-page{
  --hor-class-page-bg:#faf6f1;--hor-class-hero-bg:#efe5d8;--hor-class-surface:#fffdf9;
  --hor-class-surface-alt:#eee3d5;--hor-class-accent:#a88f70;--hor-class-ink:#191713;
  --hor-class-muted:#6c6256;--hor-class-button-bg:#8b755d;--hor-class-button-text:#fffaf4;
  --hor-class-radius:18px;--hor-class-serif:'Cormorant Garamond','Noto Serif Display',Georgia,serif;
  --hor-class-display:'Noto Serif Display',Georgia,serif;--hor-class-sans:Arial,Helvetica,sans-serif;
  width:100%;background:var(--hor-class-page-bg);color:var(--hor-class-ink);overflow:hidden;
  -webkit-font-smoothing:antialiased;
}
.hor-class-types-page *{box-sizing:border-box}.hor-class-types-page a{color:inherit;text-decoration:none}
.hor-class-types-hero{position:relative;background:var(--hor-class-hero-bg);padding:clamp(74px,11vw,140px) 22px clamp(56px,8vw,88px);overflow:hidden;isolation:isolate}
.hor-class-types-hero:after{content:attr(data-watermark);position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);font:500 italic clamp(120px,24vw,330px)/.8 var(--hor-class-serif);color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--hor-class-accent) 22%,transparent);white-space:nowrap;opacity:.65;z-index:-1;pointer-events:none}
.hor-class-types-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='130' height='130'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.hor-class-types-hero-inner{max-width:960px;margin:auto;text-align:center;position:relative;z-index:1}
.hor-class-types-eyebrow{margin:0 0 18px;font:700 10px/1.4 var(--hor-class-sans);letter-spacing:.27em;text-transform:uppercase;color:var(--hor-class-accent)}
.hor-class-types-hero h1{margin:0;font:400 clamp(48px,8vw,88px)/.96 var(--hor-class-display);letter-spacing:-.035em;text-wrap:balance}
.hor-class-types-hero h1 em{font-family:var(--hor-class-serif);font-weight:400;color:var(--hor-class-accent)}
.hor-class-types-intro{max-width:720px;margin:28px auto 0;font:400 clamp(17px,2.1vw,21px)/1.72 var(--hor-class-serif);color:var(--hor-class-muted)}
.hor-class-types-summary{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;margin-top:36px;padding-top:25px;border-top:1px solid color-mix(in srgb,var(--hor-class-ink) 10%,transparent);font:700 9.5px/1.4 var(--hor-class-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--hor-class-muted)}
.hor-class-types-summary strong{font-family:var(--hor-class-serif);font-size:18px;font-weight:500;color:var(--hor-class-ink);letter-spacing:0;margin-right:5px}.hor-class-types-summary i{display:inline-block;width:7px;height:7px;background:#73906f;border-radius:50%;margin-right:7px;box-shadow:0 0 0 4px rgba(115,144,111,.12)}

.hor-class-types-grid-wrap{max-width:1260px;margin:auto;padding:clamp(48px,8vw,100px) 22px clamp(86px,12vw,150px)}
.hor-class-types-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.hor-class-type{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:430px;background:var(--hor-class-surface);border:1px solid color-mix(in srgb,var(--hor-class-ink) 9%,transparent);border-radius:var(--hor-class-radius);overflow:hidden;position:relative;box-shadow:0 10px 34px rgba(40,32,24,.045);transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s ease,border-color .3s ease}
.hor-class-type:hover{transform:translateY(-6px);box-shadow:0 28px 65px rgba(40,32,24,.12);border-color:color-mix(in srgb,var(--hor-class-accent) 58%,transparent)}
.hor-class-type:nth-child(4n+2),.hor-class-type:nth-child(4n+3){background:var(--hor-class-surface-alt)}
.hor-class-type-media{position:relative;min-height:0;aspect-ratio:4/5;overflow:hidden;background:color-mix(in srgb,var(--hor-class-surface-alt) 85%,white)}
.hor-class-type-media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.16,1,.3,1)}
.hor-class-type:hover .hor-class-type-media img{transform:scale(1.045)}
.hor-class-type-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(32,26,20,.24));pointer-events:none}
.hor-class-type-media-empty{height:100%;display:grid;place-items:center;padding:30px;background:linear-gradient(145deg,var(--hor-class-surface-alt),var(--hor-class-hero-bg))}
.hor-class-type-media-empty span{font:500 italic 34px/1.05 var(--hor-class-serif);color:var(--hor-class-accent);text-align:center}
.hor-class-type-number{position:absolute;left:18px;bottom:15px;z-index:2;font:500 italic 18px/1 var(--hor-class-serif);color:#fff}
.hor-class-type-level{position:absolute;top:16px;left:16px;z-index:2;padding:7px 11px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(250,246,241,.84);backdrop-filter:blur(8px);color:#40372d;font:700 9px/1 var(--hor-class-sans);letter-spacing:.12em;text-transform:uppercase}
.hor-class-type-copy{display:flex;flex-direction:column;padding:clamp(28px,4vw,46px);min-width:0}
.hor-class-type-studios{margin:0 0 12px;color:var(--hor-class-accent);font:700 9px/1.4 var(--hor-class-sans);letter-spacing:.15em;text-transform:uppercase}
.hor-class-type-copy h2{margin:0;font:500 clamp(31px,3vw,43px)/1 var(--hor-class-serif);letter-spacing:-.02em}
.hor-class-type-description{margin:18px 0 0;color:var(--hor-class-muted);font:400 14px/1.75 var(--hor-class-sans);display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.hor-class-type-next{margin-top:auto;padding-top:24px}.hor-class-type-next>span{display:block;margin-bottom:10px;font:700 9px/1 var(--hor-class-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--hor-class-accent)}
.hor-class-type-next>div{display:flex;flex-wrap:wrap;gap:6px}.hor-class-type-next b{padding:7px 10px;border:1px solid color-mix(in srgb,var(--hor-class-ink) 9%,transparent);border-radius:999px;background:color-mix(in srgb,var(--hor-class-page-bg) 65%,transparent);font:600 10px/1.2 var(--hor-class-sans);color:var(--hor-class-ink)}
.hor-class-type-next p{margin:0;color:var(--hor-class-muted);font:400 italic 14px/1.4 var(--hor-class-serif)}
.hor-class-type-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--hor-class-ink) 10%,transparent);font:700 10px/1.2 var(--hor-class-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--hor-class-button-bg)}
.hor-class-type-cta b{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--hor-class-button-bg);color:var(--hor-class-button-text);font-size:16px;transition:transform .3s ease}
.hor-class-type:hover .hor-class-type-cta b{transform:translateX(4px)}
.hor-class-types-empty{padding:60px 20px;text-align:center;font:400 italic 20px/1.5 var(--hor-class-serif);color:var(--hor-class-muted)}

.hor-class-types-layout-compact .hor-class-types-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.hor-class-types-layout-compact .hor-class-type{display:flex;flex-direction:column;min-height:0}.hor-class-types-layout-compact .hor-class-type-media{min-height:0;aspect-ratio:4/5}.hor-class-types-layout-compact .hor-class-type-copy{padding:28px}.hor-class-types-layout-compact .hor-class-type-copy h2{font-size:31px}
.hor-class-types-layout-minimal .hor-class-types-grid{gap:1px;background:color-mix(in srgb,var(--hor-class-ink) 10%,transparent)}.hor-class-types-layout-minimal .hor-class-type{border-radius:0;border:0;box-shadow:none;background:var(--hor-class-surface)}.hor-class-types-layout-minimal .hor-class-type:hover{transform:none;box-shadow:none}.hor-class-types-layout-minimal .hor-class-type:nth-child(4n+2),.hor-class-types-layout-minimal .hor-class-type:nth-child(4n+3){background:var(--hor-class-surface)}

@media(max-width:1050px){.hor-class-types-grid{grid-template-columns:1fr}.hor-class-type{grid-template-columns:minmax(0,1fr) minmax(330px,.8fr)}.hor-class-types-layout-compact .hor-class-types-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.hor-class-types-hero{padding:64px 18px 48px}.hor-class-types-summary{gap:12px 18px}.hor-class-types-grid-wrap{padding:40px 16px 80px}.hor-class-type{display:flex;flex-direction:column;min-height:0;border-radius:min(var(--hor-class-radius),18px)}.hor-class-type-media{min-height:0;aspect-ratio:4/5}.hor-class-type-copy{padding:26px 22px 24px}.hor-class-type-copy h2{font-size:34px}.hor-class-types-layout-compact .hor-class-types-grid{grid-template-columns:1fr}.hor-class-types-layout-minimal .hor-class-types-grid{gap:14px;background:none}.hor-class-types-layout-minimal .hor-class-type{border:1px solid color-mix(in srgb,var(--hor-class-ink) 9%,transparent);border-radius:min(var(--hor-class-radius),18px)}}
@media(prefers-reduced-motion:reduce){.hor-class-type,.hor-class-type-media img,.hor-class-type-cta b{transition:none}.hor-class-type:hover{transform:none}.hor-class-type:hover .hor-class-type-media img{transform:none}}
