/* RMW Studio block theme: colours from theme.json (style variations), WordPress block output, news section. */
/* WordPress before 6.6 declares presets on body, later on :root: map them on both */
:root,body{--tint:var(--wp--preset--color--tint);--on:var(--wp--preset--color--on);--acc:var(--wp--preset--color--acc);--cta:var(--wp--preset--color--cta);--cta-on:var(--wp--preset--color--cta-on);color-scheme:var(--wp--custom--rmw-scheme,dark)}
body{background:var(--tint);color:var(--on)}
/* sections fill the screen: no gaps or width limits from block layout */
.landing,.landing > .wp-block-post-content{margin:0;padding:0;max-width:none}
.landing .wp-block-post-content > *{margin-block:0;max-width:none}
:where(.wp-site-blocks) > *{margin-block-start:0}
/* footer part */
.site-foot .foot-row{width:100%;gap:12px}
.site-foot .foot-name{margin:0;font:inherit;color:var(--on)}
.site-foot .wp-block-page-list{display:flex;gap:18px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
/* subpages, posts and lists built from core blocks */
.page-inner .wp-block-post-title{font-family:var(--f-display);font-weight:var(--h-weight);font-size:clamp(34px,5vw,58px);line-height:1.05;margin:.2em 0 .5em}
.page-inner h2,.page-inner h3{font-family:var(--f-display);font-weight:var(--h-weight)}
.page-inner a{color:var(--acc)}
.page-inner .wp-block-post-featured-image img{border-radius:var(--r);width:100%;height:auto}
.page-inner .wp-block-button__link,.page-inner .wp-element-button,.page-inner input[type=submit]{background:var(--cta);color:var(--cta-on);border:0;border-radius:var(--r-s);padding:.8em 1.4em;font:inherit;cursor:pointer}
.page-inner input:not([type=submit]),.page-inner textarea,.page-inner select{background:transparent;color:var(--on);border:1px solid var(--hair);border-radius:var(--r-s);padding:.6em .8em;font:inherit;max-width:100%}
.page-inner .wp-block-details{border-top:1px solid var(--hair);padding:.8em 0}
.page-inner .wp-block-details summary{cursor:pointer;font-weight:600}
.page-inner .wp-block-gallery img{border-radius:var(--r-s)}
.page-inner .wp-block-quote{border-left:2px solid var(--acc);padding-left:1em;margin-left:0}
.news-list .wp-block-post-template{list-style:none;margin:0;padding:0;display:grid;gap:28px}
.news-list .wp-block-post-title{font-size:clamp(24px,3vw,32px);margin:.2em 0}
.news-list .wp-block-post-title a{color:var(--on);text-decoration:none}
.news-list .wp-block-query-pagination{margin-top:36px;gap:14px}
.wp-block-post-navigation-link{margin:.4em 0}
.lab.wp-block-post-date,.lab.wp-block-post-terms{display:block}
/* news section on the landing page (links styled like the room cards) */
.news-cards a{all:unset;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:18px 22px;background:var(--glass);backdrop-filter:blur(14px);border:1px solid var(--hair);border-radius:var(--r);transition:transform .3s,border-color .3s}
.news-cards a:hover{border-color:var(--acc);transform:translateX(4px)}
.news-cards a:focus-visible{outline:2px solid var(--acc)}
.news-cards b{font-family:var(--f-label);font-size:12px;letter-spacing:.12em;color:var(--acc)}
.news-cards span{display:grid;gap:4px;color:var(--on)}
.news-cards small{color:var(--dim)}
.news-cards i{font-style:normal;color:var(--acc)}
@media (max-width:600px){.news-cards a{grid-template-columns:1fr auto}.news-cards b{grid-column:1/-1}}

/* 2.1: studio profiles, route and map on request, reviews */
.social{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px}
.social a{color:var(--on);text-underline-offset:4px;font-family:var(--f-label);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.social a:hover{color:var(--acc)}
.foot-social{margin:0}
.map-links{margin:14px 0 0}.map-links a{color:var(--acc)}
.map{margin-top:16px;display:grid;gap:8px;justify-items:start}
.map small{color:var(--dim)}
.map iframe{width:100%;aspect-ratio:16/10;border:0;border-radius:var(--r)}
.quotes{display:grid;gap:14px}
.quote{margin:0;padding:22px 24px;background:var(--glass);backdrop-filter:blur(14px);border:1px solid var(--hair);border-radius:var(--r)}
.quote blockquote{margin:8px 0 12px}
.quote p{margin:0;font-family:var(--f-display);font-size:clamp(18px,1.6vw,22px);line-height:1.35}
.quote figcaption{color:var(--dim);font-size:14px}
.quote figcaption b{color:var(--on);font-weight:600}
.stars{color:var(--acc);letter-spacing:.15em}

.rmw-note{padding:14px 18px;border:1px dashed var(--acc);border-radius:var(--r-s);color:var(--acc)}

/* 2.1: plugins — Contact Form 7 and Complianz in the RMW look */
.wpcf7 form{display:grid;gap:14px;max-width:640px}
.wpcf7 p{margin:0}
.wpcf7 label{display:grid;gap:6px;font-family:var(--f-label);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.wpcf7 input:not([type=submit]):not([type=checkbox]):not([type=radio]),.wpcf7 textarea,.wpcf7 select{width:100%;box-sizing:border-box;background:transparent;color:var(--on);border:1px solid var(--hair);border-radius:var(--r-s);padding:.75em .9em;font:inherit;font-size:16px;letter-spacing:0;text-transform:none}
.wpcf7 input:focus-visible,.wpcf7 textarea:focus-visible,.wpcf7 select:focus-visible{outline:2px solid var(--acc);outline-offset:1px}
.wpcf7 input[type=submit]{justify-self:start;background:var(--cta);color:var(--cta-on);border:0;border-radius:var(--r-s);padding:.9em 1.6em;font-family:var(--f-label);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.wpcf7 .wpcf7-not-valid-tip{color:#F2A3A3;font-size:13px;margin-top:4px;text-transform:none;letter-spacing:0}
.wpcf7 form .wpcf7-response-output{margin:0;border-radius:var(--r-s);border:1px solid var(--acc);padding:.8em 1em;color:var(--on)}
.wpcf7-spinner{background-color:var(--acc)}
.cmplz-cookiebanner{background:var(--tint)!important;color:var(--on)!important;border:1px solid var(--hair)!important;border-radius:var(--r)!important;font-family:inherit!important}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept{background:var(--cta)!important;color:var(--cta-on)!important;border-color:var(--cta)!important}
.cmplz-cookiebanner .cmplz-btn:not(.cmplz-accept){background:transparent!important;color:var(--on)!important;border-color:var(--hair)!important}
.cmplz-cookiebanner a{color:var(--acc)!important}
/* subpages scroll under the fixed bar: give it the page colour so text never runs behind the logo */
.bar-page{background:color-mix(in srgb,var(--tint) 90%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
