/* Shared paper, pencil and type; each programme supplies its own room palette. */
@import url('https://fonts.googleapis.com/css2?family=Kalam:wght@400;700&display=swap');

/* Original pen-drawn symbols: a translucent wash and slightly wandering ink. */
.wt-sketch-icon { display:inline-block; width:1.25em; height:1.25em; vertical-align:-.22em; flex-shrink:0; overflow:visible; color:inherit; }
.wt-sketch-icon-wash { fill:currentColor; opacity:.075; stroke:none; }
.wt-sketch-icon-ink { fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
:is(h1,h2,h3) > .wt-sketch-icon { width:1.4em; height:1.4em; margin-right:.12em; transform:rotate(-5deg); }
:is(.btn,.wt-view-switcher-btn) > .wt-sketch-icon { margin-right:.2em; }
.wt-pub-tooltip .wt-sketch-icon { width:1.15em; height:1.15em; }
.wt-programme-illustration { margin:0 auto 2rem; width:100%; max-width:320px; }
.wt-programme-illustration .wt-sidebar-illustration { display:block; width:100%; height:auto; border:1px solid var(--room-line); }
.wt-programme-illustration figcaption { margin-top:1rem; text-align:center; font-family:var(--sketch-font); font-size:1.15rem; color:var(--room-ink); }

:where(.wt-sketch-site,.editor-styles-wrapper) {
    --room-paper:#faf6ed; --room-wash:#edf0e4; --room-accent:#6b8f5e;
    --room-ink:#334b33; --room-line:#8b9780; --room-radius:24px 8px 29px 10px / 9px 27px 12px 25px;
    --sketch-font:'Kalam','Segoe Print',cursive;
}
.wt-sketch-site.strand-cafe { --room-paper:#fff9f0; --room-wash:#f0dfca; --room-accent:#b8875d; --room-ink:#674731; --room-line:#a8896b; }
.wt-sketch-site.strand-creative { --room-paper:#fffdf4; --room-wash:#f7e8bf; --room-accent:#d99a2d; --room-ink:#484833; --room-line:#969276; }
.wt-sketch-site.strand-youth { --room-paper:#fffbed; --room-wash:#f6d97d; --room-accent:#e8962a; --room-ink:#273c2d; --room-line:#536349; --room-radius:4px 15px 6px 11px / 13px 5px 12px 4px; }
.wt-sketch-site.strand-shoots { --room-paper:#fff9f4; --room-wash:#f2ddd1; --room-accent:#ce896e; --room-ink:#784a3e; --room-line:#ad8d7d; --room-radius:35px 25px 38px 23px / 23px 38px 26px 35px; }
.wt-sketch-site { background:var(--room-paper); }
.wt-sketch-site .site-header { border-bottom:1px solid #c8c6b6; box-shadow:0 3px 0 -1px #f7f3e9,0 4px 0 -1px #d9d8ca; }
.wt-sketch-site .main-navigation a { border-radius:8px 3px 10px 4px; }
.wt-sketch-site .site-footer { border-top:3px double #c4b89a; }
.wt-sketch-site :is(.btn,.wp-block-button__link,button[type=submit],input[type=submit]) { border-radius:19px 7px 22px 8px / 8px 22px 9px 19px; box-shadow:1px 2px 0 #334b331c; }
.wt-sketch-site :is(.btn-primary,.wp-block-button__link) { background:var(--room-ink); color:#fffdf4; border-color:var(--room-ink); }
.wt-sketch-site :is(.btn-primary,.wp-block-button__link):hover { background:#263d2c; color:#fffdf4; }
.wt-sketch-site .btn-secondary { color:var(--room-ink); border-color:var(--room-ink); }
.wt-sketch-site .btn-secondary:hover { background:var(--room-wash); color:var(--room-ink); }
.wt-sketch-site :is(a,button,input,select,textarea):focus-visible { outline:3px solid var(--room-ink); outline-offset:4px; }
.wt-sketch-site :is(.badge,.journal-card-category-badge) { border-radius:9px 4px 12px 5px; color:var(--room-ink); background:var(--room-wash); }

.wt-sketch-site :is(.card,.sketch-card,.clay-card,.feature-card,.editorial-callout,.wt-paper-panel,.featured-spotlight-card),
.is-style-sketch-panel,.is-style-sketch-callout {
    border:1.5px solid var(--room-line); border-radius:var(--room-radius); background:var(--room-paper);
    box-shadow:3px 4px 0 -1px var(--room-wash); position:relative;
}
.wt-sketch-site :is(.card,.sketch-card,.clay-card,.feature-card):hover { transform:none; box-shadow:3px 5px 0 -1px var(--room-wash); border-color:var(--room-ink); }
.wt-sketch-site .wt-paper-panel { padding:clamp(1.4rem,3.5vw,3rem); }
.wt-sketch-site :is(.wt-paper-panel,.journal-card,.sketch-card)::before {
    content:''; position:absolute; inset:4px; pointer-events:none; border:1px solid var(--room-line); opacity:.28;
    border-radius:9px 24px 11px 28px / 23px 9px 28px 8px;
}
.wt-sketch-site .wt-programme-enquiry { text-align:center; }
.wt-sketch-site :is(.entry-content,.strand-sidebar) h2 { color:var(--room-ink); }
.wt-sketch-site .strand-sidebar h3 { color:var(--room-ink) !important; font-family:var(--sketch-font) !important; font-size:1.5rem !important; font-weight:700; }
.wt-sketch-site :is(.editorial-callout,.wp-block-group.is-style-editorial-callout),.is-style-sketch-callout {
    background:var(--room-wash); border:1.5px solid var(--room-line); border-radius:var(--room-radius);
    padding:clamp(1.3rem,3vw,2.25rem); margin-block:2rem;
}
.is-style-sketch-panel { padding:clamp(1.3rem,3vw,2.25rem); }
.is-style-sketch-callout::before { content:''; position:absolute; width:60px; height:16px; top:-8px; left:28px; background:var(--room-accent); opacity:.3; transform:rotate(-5deg); }
.wt-sketch-site :is(blockquote,.quote-block),.is-style-sketch-note {
    padding:1.5rem 1.8rem; border:0; border-left:3px double var(--room-line); border-radius:2px 17px 8px 3px;
    background:var(--room-wash); color:var(--room-ink); box-shadow:none; font-size:1.25rem;
}
.wt-sketch-site blockquote p,.is-style-sketch-note p { font-family:var(--sketch-font); font-size:1.45rem; line-height:1.5; }
.wt-sketch-site .entry-content :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select) { border:1px solid var(--room-line); border-radius:10px 4px 12px 5px; background:#fffef9; }
.wt-sketch-site hr { border:0; border-top:3px double var(--room-line); height:0; opacity:.6; }
.wt-room-mark { display:block; width:62px; height:66px; margin:0 auto 14px; color:var(--room-ink); fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; transform:rotate(-5deg); }
.wt-sketch-site .strand-hero { position:relative; isolation:isolate; padding:3rem 0 3.5rem; background:var(--room-paper); border-bottom:3px double var(--room-line); }
.wt-sketch-site .strand-hero::before { content:''; position:absolute; z-index:-1; inset:10% 15% 6%; background:var(--room-wash); border-radius:43% 57% 63% 37% / 57% 38% 62% 43%; opacity:.8; transform:rotate(-2deg); }
.wt-sketch-site .strand-hero .entry-title { font-size:clamp(2.1rem,4vw,3.5rem) !important; color:var(--room-ink); }
.wt-sketch-site .strand-hero .strand-subtitle { color:var(--room-ink) !important; font-size:1.1rem !important; }
.wt-sketch-site .entry-header .entry-title { font-size:clamp(2rem,3.7vw,3.3rem) !important; max-width:950px; margin-inline:auto; color:var(--room-ink) !important; }
.wt-sketch-site .strand-layout-grid { gap:2.5rem !important; }
.wt-sketch-site .strand-sidebar { padding-top:10px; }
.wt-sketch-site :is(.polaroid-frame,.entry-thumbnail),.is-style-sketch-photo {
    background:#fffdf8; padding:10px 10px 24px; border:1px solid var(--room-line) !important; border-radius:4px 7px 3px 8px !important;
    box-shadow:3px 5px 0 var(--room-wash); overflow:visible !important;
}
.wt-sketch-site .entry-thumbnail img,.is-style-sketch-photo img { border-radius:2px; width:100%; height:auto; display:block; }
.wt-sketch-site .entry-thumbnail { max-width:1100px; margin-inline:auto; }
.wt-sketch-site .wt-example-caption { font-size:.8rem; color:#626957; line-height:1.5; margin:10px 4px 0; }
.wt-sketch-site .journal-card { background:#fffdf8; padding:12px; overflow:hidden; }
.wt-sketch-site .journal-card-thumbnail { margin:0; aspect-ratio:3/2; border:1px solid #d2cbbd; border-radius:4px 8px 3px 6px; overflow:hidden; }
.wt-sketch-site .journal-card-thumbnail img { width:100%; height:100%; object-fit:cover; }
.wt-sketch-site .journal-card-content { padding:1.3rem .7rem .7rem; }
.wt-sketch-site .journal-card-title { font-size:1.5rem; line-height:1.3; }
.wt-sketch-site .journal-card-meta { flex-wrap:wrap; }
.wt-sketch-site .journal-card-excerpt { font-size:1rem; line-height:1.65; }
.wt-sketch-site .journal-section { background:#f0ecdf; border-top:3px double #c6c8b7; }
.wt-sketch-site .journal-header h2 { color:var(--room-ink); }
.wt-sketch-site.strand-youth .strand-hero::before { border-radius:4px 19px 6px 16px; transform:rotate(-2deg); inset:8% 12%; }
.wt-sketch-site.strand-youth .strand-hero .entry-title { font-family:var(--font-body); font-weight:900; letter-spacing:-.03em; }
.wt-sketch-site.strand-youth :is(.collage-card,.wt-paper-panel) { border:2px solid var(--room-ink); border-radius:var(--room-radius); box-shadow:5px 5px 0 var(--room-accent); }
.wt-sketch-site.strand-youth .collage-card { background:var(--room-paper); }
.wt-sketch-site.strand-youth .collage-card::before { background:var(--room-accent); transform:rotate(-1deg); border:0; height:12px; }
.wt-sketch-site.strand-creative :is(.sketch-card,.wt-paper-panel) { background:linear-gradient(130deg,#fffdf5 70%,#f9edcc); }
.wt-sketch-site.strand-cafe .polaroid-frame { transform:rotate(-2deg); }
.wt-sketch-site.strand-shoots .clay-card::after { height:4px; background:var(--room-accent); }
@media(max-width:768px) {
    .wt-sketch-site .strand-hero { padding:2rem 0; }
    .wt-sketch-site .strand-hero::before { inset:5% 3%; }
    .wt-sketch-site .strand-layout-grid { gap:2rem !important; }
    .wt-sketch-site .wt-paper-panel { padding:1.3rem; }
    .wt-sketch-site .entry-content.container-narrow { width:100%; }
    .wt-sketch-site .journal-header { gap:1.5rem; }
    .wt-room-mark { width:48px; height:52px; }
}
@media(prefers-reduced-motion:reduce) { .wt-sketch-site * { scroll-behavior:auto; } }

/* Supplied brand artwork: preserve each logo's original proportions. */
.site-branding .header-logo-approved {
    display: block;
    width: 140px;
    height: auto;
    max-width: 100%;
    object-fit: contain;
}
.footer-logo-approved {
    display: block;
    width: 150px;
    height: auto;
    max-width: 100%;
}
.programme-logo-approved {
    display: block;
    width: 210px;
    height: auto;
    max-width: 100%;
    margin: 0 auto 1.25rem;
}
.strand-shoots .programme-logo-approved {
    width: 380px;
}
@media (max-width: 767px) {
    .site-branding .header-logo-approved { width: 108px; }
    .programme-logo-approved { width: 170px; }
    .strand-shoots .programme-logo-approved { width: 320px; }
}
