/* Copper editorial system. Deliberately isolated from the approved homepage and other variants. */
.cp-page { color:var(--wc-body); }
.cp-page main { overflow:clip; }
.cp-page :where(section,[id]) { scroll-margin-top:1.5rem; }
.cp-page .wc-button--primary { background:var(--wc-accent); border-color:var(--wc-accent); color:var(--wc-paper); }
.cp-page .wc-button--primary:hover { background:var(--wc-ink); border-color:var(--wc-ink); }
.cp-wrap { max-width:1680px; margin-inline:auto; padding-inline:var(--wc-gutter); }
.cp-section { padding-block:clamp(4rem,7.5vw,8rem); }
.cp-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,6rem); }
.cp-hero { min-height:550px; height:clamp(550px,45vw,720px); position:relative; isolation:isolate; color:var(--wc-paper); background:var(--wc-body); }
.cp-hero>figure { position:absolute; inset:0; z-index:-2; }
.cp-hero>figure img,.cp-hero>img { width:100%; height:100%; object-fit:cover; object-position:60% 43%; }
.cp-hero>img { position:absolute; inset:0; z-index:-2; }
.cp-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(32,27,23,.65),rgba(32,27,23,.2) 53%,transparent 78%); }
.cp-hero__copy { position:absolute; left:var(--wc-gutter); bottom:clamp(2.5rem,4.5vw,5rem); width:min(47%,700px); }
.cp-hero h1 { color:inherit; font-size:clamp(4.5rem,7vw,8rem); line-height:.91; margin:1.4rem 0 1.6rem; }
.cp-hero__copy>p:not(.wc-label) { max-width:38ch; line-height:1.6; }
.cp-hero .wc-link { border-color:currentColor; }
.cp-hero .cp-actions { margin-top:1.5rem; }
.cp-intro { padding:clamp(3.2rem,6vw,6rem) var(--wc-gutter) clamp(2.5rem,4vw,4rem); max-width:1680px; margin-inline:auto; }
.cp-intro h1 { font-size:clamp(3.8rem,7.3vw,8rem); line-height:.92; margin:1.3rem 0 1.8rem; max-width:17ch; }
.cp-intro>p:not(.wc-label) { max-width:60ch; font-size:clamp(1rem,1.5vw,1.2rem); }
.cp-page h2 { font-size:clamp(2.8rem,4.7vw,5.2rem); }
.cp-page h3 { font-size:clamp(1.8rem,2.9vw,3rem); }
.cp-actions { display:flex; flex-wrap:wrap; gap:1rem 1.7rem; align-items:center; }
.cp-note { font-size:.76rem; line-height:1.65; color:var(--wc-muted); max-width:80ch; }
.cp-band { background:var(--wc-accent); color:var(--wc-paper); --wc-rule:#C9A68C; }
.cp-band :is(h2,h3,.cp-note,.wc-label) { color:inherit; }
.cp-band .wc-link { border-color:currentColor; }
.cp-invitation { padding:clamp(4rem,7vw,7rem) var(--wc-gutter); background:var(--wc-accent); color:var(--wc-paper); text-align:center; }
.cp-invitation h2 { color:inherit; font-size:clamp(3.4rem,6.8vw,7rem); line-height:.94; margin:1.5rem 0; }
.cp-invitation>p:not(.wc-label) { margin:0 auto 2rem; max-width:46ch; }
.cp-invitation>div { display:flex; flex-direction:column; align-items:center; gap:1.3rem; }
.cp-return-link { display:inline-flex; align-items:center; gap:1rem; font-size:.83rem; }
.cp-invitation small { display:block; max-width:70ch; margin:1.8rem auto 0; font-size:.7rem; }
.cp-care { display:grid; grid-template-columns:1fr 1fr; background:var(--wc-sand); color:var(--wc-ink); }
.cp-care>figure { min-height:560px; max-height:760px; }
.cp-care>figure img { width:100%; height:100%; object-fit:cover; }
.cp-care>div { align-self:center; padding:clamp(2rem,5vw,5rem); }
.cp-care h2 { margin:1.8rem 0; }
.cp-care>div>p:not(.wc-label) { max-width:43ch; margin-block:1.5rem; }
.cp-care .cp-note { color:var(--wc-ink); }
.cp-page details>summary { cursor:pointer; }
.cp-page input:not([type=radio]):not([type=checkbox]),.cp-page select,.cp-page textarea { border-radius:0; }
@media(min-width:1680px) { .cp-hero__copy { left:max(var(--wc-gutter),calc((100% - 1520px)/2)); } }
@media(max-width:900px) { .cp-hero__copy { width:55%; } .cp-care>figure { min-height:520px; } }
@media(max-width:640px) {
 .cp-grid { grid-template-columns:1fr; }
 .cp-hero { height:690px; min-height:600px; max-height:calc(100svh + 70px); }
 .cp-hero>figure img,.cp-hero>img { object-position:72% center; }
 .cp-hero::after { background:linear-gradient(0deg,rgba(25,22,19,.82),rgba(25,22,19,.22) 62%,transparent); }
 .cp-hero__copy { left:var(--wc-gutter); right:var(--wc-gutter); width:auto; bottom:2rem; }
 .cp-hero h1 { font-size:clamp(3.6rem,15vw,4.7rem); max-width:12ch; margin-block:1rem; }
 .cp-hero__copy>p:not(.wc-label) { max-width:37ch; font-size:.94rem; }
 .cp-hero .cp-actions { gap:.6rem 1.4rem; }
 .cp-hero .wc-button { padding:.8rem 1rem; gap:1rem; }
 .cp-intro h1 { font-size:clamp(3.4rem,14vw,4.8rem); }
 .cp-page h2 { font-size:clamp(2.7rem,11vw,3.8rem); }
 .cp-care { grid-template-columns:1fr; }
 .cp-care>figure { min-height:0; height:400px; }
 .cp-care>div { padding:3rem var(--wc-gutter); }
 .cp-invitation h2 { font-size:3.6rem; }
 .cp-invitation .wc-button { font-size:.77rem; gap:1rem; }
}
