
.voucher-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8%;align-items:center;padding-top:42px;padding-bottom:30px}
.voucher-photo{display:block;width:100%;height:auto;object-fit:contain;border-radius:0;box-shadow:0 5px 24px rgba(47,47,49,.08)}
.voucher-copy h1{font-size:clamp(28px,3vw,39px);margin-bottom:24px}
.voucher-copy h2{font-size:clamp(32px,3.4vw,44px);color:var(--charcoal);max-width:15ch;margin-bottom:24px}
.voucher-copy .voucher-lead{font-size:21px;line-height:1.55;max-width:33ch;margin-bottom:18px}
.voucher-copy .voucher-region{font-size:16px;max-width:40ch;margin:0 0 20px}
.voucher-copy .button{margin-top:0;font-size:14px;letter-spacing:.06em;max-width:100%;text-align:center;justify-content:center;min-height:48px}
.voucher-values{font-size:15px;color:var(--deep);margin-top:16px;max-width:40ch}
.voucher-story{background:var(--white)}
.voucher-story .section{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:42px;padding-bottom:42px}
.voucher-story h2{font-size:29px;color:var(--deep);max-width:20ch}
.voucher-story p{max-width:44ch;font-size:17px}
.voucher-details{padding-top:38px;padding-bottom:52px;display:grid;grid-template-columns:1fr 1fr;gap:8%}
.voucher-details h2{font-size:26px;color:var(--deep);margin-bottom:14px}
.voucher-details p{max-width:45ch}
.voucher-details a:not(.text-link){text-decoration:underline;text-underline-offset:4px}
.voucher-details details{align-self:start}
.voucher-details summary{cursor:pointer;font-size:18px;color:var(--deep);padding:4px 0}
.voucher-details .voucher-conditions{font-size:15px;line-height:1.7;margin-top:15px}
.voucher-details .text-link{font-size:16px;margin-top:18px}
@media(max-width:1000px){.voucher-hero{gap:6%}.voucher-photo{height:auto}.voucher-copy .voucher-lead{font-size:19px}}
@media(max-width:760px){.voucher-hero{display:flex;flex-direction:column-reverse;gap:30px;padding-top:28px;padding-bottom:38px;align-items:stretch}.voucher-copy h1{font-size:28px;margin-bottom:18px}.voucher-copy h2{font-size:32px;margin-bottom:18px;max-width:none}.voucher-copy .voucher-lead{font-size:19px;max-width:none;margin-bottom:16px}.voucher-copy .voucher-region{max-width:none}.voucher-values{font-size:15px}.voucher-photo{height:auto;max-width:460px;margin:0 auto}.voucher-story .section,.voucher-details{display:block}.voucher-story .section{padding-top:32px;padding-bottom:32px}.voucher-story h2{font-size:27px;margin-bottom:18px;max-width:none}.voucher-story p{font-size:17px;max-width:none}.voucher-details{padding-top:32px;padding-bottom:38px}.voucher-details details{margin-top:28px}}

/* Desktop editorial layout */
@media(min-width:901px){
 .voucher-page{max-width:1280px;margin:0 auto;padding:48px 6% 64px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:56px;row-gap:48px}
 .voucher-hero.section{grid-column:1/-1;max-width:none;margin:0;padding:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
 .voucher-copy{grid-column:1;grid-row:1}
 .voucher-photo{grid-column:2;grid-row:1;width:100%;height:auto;max-width:none;box-shadow:0 6px 28px rgba(47,47,49,.09)}
 .voucher-copy h1{font-size:18px;letter-spacing:.09em;text-transform:uppercase;color:var(--deep);margin-bottom:18px}
 .voucher-copy h2{font-size:clamp(36px,3.4vw,46px);line-height:1.14;max-width:15ch;margin-bottom:22px}
 .voucher-copy .voucher-lead{font-size:20px;line-height:1.55;max-width:34ch;margin-bottom:18px}
 .voucher-copy .voucher-region{font-size:16px;line-height:1.6;max-width:38ch;margin-bottom:22px}
 .voucher-copy .button{font-size:13px;padding:14px 24px;min-height:48px}
 .voucher-values{font-size:14px;line-height:1.6;margin-top:14px;max-width:40ch}
 .voucher-story{grid-column:1;background:transparent}
 .voucher-story .section{display:block;margin:0;padding:0;max-width:none}
 .voucher-story h2{font-size:26px;line-height:1.25;margin-bottom:18px;max-width:none}
 .voucher-story p{font-size:16px;line-height:1.7;max-width:44ch}
 .voucher-details.section{grid-column:2;display:block;margin:0;padding:0;max-width:none}
 .voucher-details h2{font-size:26px;line-height:1.25;margin-bottom:18px}
 .voucher-details p{font-size:16px;line-height:1.7;max-width:44ch}
 .voucher-details .text-link{margin-top:16px;font-size:15px}
 .voucher-details details{margin-top:24px}
 .voucher-details summary{font-size:16px}
 .voucher-details .voucher-conditions p{font-size:15px}
}

/* Match the established page-title hierarchy. */
.voucher-copy h1{font-size:clamp(34px,4vw,54px);font-weight:400;line-height:1.18;letter-spacing:-.025em;text-transform:none;color:var(--deep);margin-bottom:22px}
.voucher-copy h2{font-size:30px;line-height:1.2;max-width:none;margin-bottom:20px}
@media(max-width:760px){.voucher-copy h1{font-size:39px;margin-bottom:18px}.voucher-copy h2{font-size:28px;margin-bottom:18px}}
