/* Content sections use the same visual language as the original portfolio. */
body{font-family:var(--cms-body-font,'DM Sans'),sans-serif}.hero h1,.big-title,.intro,.cms-title,.overlay strong,.section-heading h2,.contact-strip h2{font-family:var(--cms-display-font,'Italiana'),serif}.cms-nav-link span,.cms-footer-link span{margin-left:4px}.cms-nav-link>span{display:none}.cms-title{font-size:clamp(38px,4.5vw,65px);font-weight:400;line-height:1.15;margin:25px 0 35px}.cms-block .body-copy{color:var(--muted)}.cms-large-copy{font-size:clamp(21px,2.8vw,35px);max-width:950px;line-height:1.5}.cms-space-compact.section{padding-top:45px;padding-bottom:45px}.cms-space-large.section{padding-top:155px;padding-bottom:155px}.cms-theme-light{background:#e0e0dc;color:#151617;--muted:#55585a;--line:#babbb8}.cms-theme-light .eyebrow{color:#55585a}.cms-theme-light .arrow-link{border-color:#777}.cms-image-right>div:first-child{order:2}.cms-image-right>div:last-child{order:1}.cms-figure{margin:0}.cms-figure>img{display:block;width:100%;height:auto;max-height:90svh;object-fit:contain}.cms-figure figcaption{margin-top:18px}.cms-project-grid{margin-top:35px}.project .image-wrap{aspect-ratio:var(--cms-cover-ratio,3/2)}.project .image-wrap img{filter:saturate(var(--cms-image-saturation,.6))}.project:hover .image-wrap img{filter:saturate(1)}.cms-no-stagger .project:nth-child(even){padding-top:0}.cms-block[data-cms-system]>.section{padding-top:65px;padding-bottom:65px}.cms-block[data-cms-system].cms-space-compact>.section{padding-top:30px;padding-bottom:30px}.cms-block[data-cms-system].cms-space-large>.section{padding-top:125px;padding-bottom:125px}a:focus-visible,button:focus-visible{outline:2px solid var(--cms-accent,#ddd);outline-offset:4px}body[data-cms-preview=true] .hero{min-height:580px}
/* The editor is intentionally independent of the visitor-facing theme. */
.admin-section:has(.studio){max-width:none;padding:45px 4% 80px}.admin-section:has(.studio)>.eyebrow{font-size:9px}.admin-section:has(.studio)>.admin-top .big-title{font-size:60px;margin:15px 0 25px}.admin-section:has(.studio)>.filters{margin-bottom:28px;font-size:12px}.studio{--studio-border:#353a3d;--studio-muted:#a5adae;background:#141819;border:1px solid var(--studio-border);border-radius:12px;color:#edf0ef;font:13px/1.5 'DM Sans',Arial,sans-serif;overflow:hidden}.studio *,.studio-modal *{box-sizing:border-box}.studio h2,.studio h3,.studio h4,.studio-modal h2{font-family:'DM Sans',Arial,sans-serif;font-weight:500;letter-spacing:-.02em;color:#f0f1ee}.studio h2{font-size:22px;margin:0}.studio h3{font-size:19px;margin:0 0 16px}.studio h4{font-size:14px;margin:28px 0 12px}.studio-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px;border-bottom:1px solid var(--studio-border)}.studio-toolbar p{font-size:11px;margin:7px 0 0;color:var(--studio-muted)}.studio-toolbar-actions,.studio-inline{display:flex;gap:8px;flex-wrap:wrap}.studio button,.studio-modal button,.studio-import,.studio-upload{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #485052;background:#1c2324;color:#e6eae7;border-radius:5px;padding:9px 12px;font:12px/1.4 'DM Sans',Arial,sans-serif;cursor:pointer;transition:background .15s}.studio button:hover,.studio-modal button:hover{background:#2c3535}.studio button.studio-primary,.studio-modal button.studio-primary{background:#d6e0c7;border-color:#d6e0c7;color:#182116}.studio button.studio-primary:hover,.studio-modal button.studio-primary:hover{background:#eaf3df}.studio button:disabled{cursor:default}.studio button.active,.studio-photo-grid button.active{background:#303e31;border-color:#a4bc8e}.studio-status{font-size:12px;color:#b5c1b5;margin:0;padding:12px 24px;border-bottom:1px solid var(--studio-border);min-height:43px}.studio-status.studio-error{color:#ffc0ac}.studio-layout{display:grid;grid-template-columns:minmax(330px,390px) minmax(0,1fr);align-items:start}.studio-controls{border-right:1px solid var(--studio-border);max-height:calc(100svh - 30px);overflow:auto;scrollbar-width:thin;scrollbar-color:#56625c transparent}.studio-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:18px 18px 0}.studio-tabs button{justify-content:start;text-align:left;font-size:11px;padding:10px}.studio-tabs button.active{background:#d6e0c7;color:#182116;border-color:#d6e0c7}.studio-language{padding:18px;display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--studio-border);font-size:11px;color:#b9c2bf}.studio-language select{flex:1}.studio-panel{padding:22px 18px 35px}.studio-field{display:flex;flex-direction:column;gap:6px;margin:15px 0;font-size:12px;letter-spacing:0;color:#c7cfcb}.studio-field input,.studio-field textarea,.studio-field select,.studio select,.studio-modal input,.studio-modal select,.studio-modal textarea{background:#0f1415;border:1px solid #46504f;border-radius:5px;padding:10px;color:#edf0ef;font:13px/1.5 'DM Sans',Arial,sans-serif;width:100%;min-width:0;outline-offset:2px}.studio-field input:focus,.studio-field textarea:focus,.studio-field select:focus,.studio-modal input:focus{border-color:#c7d2b9;outline:1px solid #c7d2b9}.studio-field textarea{resize:vertical;min-height:90px}.studio-field input[type=color]{height:40px;padding:5px}.studio-field input[type=range]{padding:8px 0;accent-color:#d6e0c7}.studio-check{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:14px;font-size:12px;color:#c7cfcb;letter-spacing:0;margin:15px 0}.studio-check input[type=checkbox]{width:17px;height:17px;accent-color:#bace9e;padding:0}.studio-help{font-size:12px;line-height:1.7;color:#a4b0aa;margin:12px 0}.studio-blocks{list-style:none;margin:20px 0;padding:0;display:grid;gap:8px}.studio-blocks li{display:flex;align-items:stretch;gap:5px;border:1px solid #353f3d;border-radius:6px;overflow:hidden}.studio-blocks li.active{border-color:#bbd0a7;background:#242e26}.studio-blocks li>button{flex:1;min-width:0;flex-direction:column;align-items:start;border:0;background:transparent;text-align:left;padding:12px;font-size:12px}.studio-blocks li small{font-size:10px;color:#99a69d;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.studio-blocks li>div{display:flex;gap:3px;align-items:center;padding:4px}.studio-blocks li>div button{padding:6px;border:0;background:transparent}.studio-add{display:flex;gap:7px;margin-bottom:28px}.studio-add select{flex:1;min-width:0;font-size:12px}.studio-add button{white-space:nowrap}.studio-inspector{border-top:1px solid var(--studio-border);padding-top:24px}.studio-inspector>.studio-inline{margin-bottom:20px}.studio-image-field{margin:20px 0}.studio-image-field img{display:block;width:100%;max-height:220px;object-fit:contain;background:#090c0d;border-radius:5px;margin-bottom:10px}.studio-image-field button{width:100%}.studio-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.studio-photo-grid article{border:1px solid #39423e;border-radius:5px;padding:6px;min-width:0}.studio-photo-grid img{display:block;width:100%;height:115px;object-fit:cover;background:#0f1415}.studio-photo-grid article>div{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.studio-photo-grid button{padding:4px 6px;font-size:10px;flex:1}.studio-photo-grid small{font-size:10px;color:#9da99f}.studio-preview-panel{position:sticky;top:0;min-width:0}.studio-preview-bar{height:58px;border-bottom:1px solid var(--studio-border);display:flex;align-items:center;justify-content:space-between;padding:10px 18px;color:#b6c0b9;font-size:11px}.studio-preview-bar>div{display:flex;gap:5px}.studio-preview-bar button{padding:5px 9px;font-size:10px}.studio-preview-wrap{padding:18px;background:#090d0e;display:flex;justify-content:center;overflow:hidden;min-height:740px}.studio-preview-wrap iframe{background:#101112;display:block;width:100%;height:800px;border:1px solid #353a3d;border-radius:5px;transition:max-width .2s;max-width:100%}.studio-preview-wrap.mobile iframe{max-width:390px;height:844px}.studio details{border-bottom:1px solid #3a443e;padding:15px 0}.studio summary{font-size:14px;cursor:pointer}.studio hr{border:0;border-top:1px solid #35403b;margin:25px 0}.studio-link-row{border-bottom:1px solid #35403b;padding-bottom:18px;margin-bottom:20px}.studio-version{display:grid;gap:8px;border-bottom:1px solid #35403b;padding:14px 0;font-size:12px}.studio-import{margin:16px 0;flex-direction:column;align-items:start;width:100%;text-align:left;cursor:pointer}.studio-import input{font-size:11px;width:100%;margin-top:7px}.studio-modal{position:fixed;inset:0;z-index:1000;background:#000c;display:flex;align-items:center;justify-content:center;padding:25px;color:#edf0ef;font:13px/1.5 'DM Sans',Arial,sans-serif}.studio-modal-card{background:#171d1e;border:1px solid #4e5a52;border-radius:12px;padding:24px;width:min(900px,100%);max-height:90svh;overflow:auto;box-shadow:0 20px 90px #000a}.studio-modal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.studio-modal-head h2{font-size:22px;margin:0}.studio-modal-head button{font-size:22px;padding:3px 12px}.studio-modal form{display:flex;flex-direction:column;gap:16px;max-width:550px}.studio-modal label{font-size:12px;letter-spacing:0;color:#c7cfcb}.studio-upload{background:#d6e0c7;color:#182116;border:0;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;max-width:520px;margin-bottom:20px}.studio-upload input{max-width:280px;font-size:12px;color:#182116;padding:0;border:0;background:transparent}.studio-media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.studio-media-grid button{display:flex;flex-direction:column;align-items:start;justify-content:start;text-align:left;padding:6px;min-width:0}.studio-media-grid button.selected{border-color:#bace9e;background:#303e31}.studio-media-grid img{width:100%;height:120px;object-fit:cover}.studio-media-grid span{font-size:10px;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:6px}.studio-modal [hidden]{display:none}
@media(min-width:1700px){.studio-layout{grid-template-columns:420px minmax(0,1fr)}.studio-preview-wrap iframe{height:900px}}
@media(max-width:1050px){.studio-layout{grid-template-columns:330px minmax(0,1fr)}.studio-toolbar{align-items:start;flex-direction:column}.studio-preview-wrap{padding:8px}.admin-section:has(.studio){padding:30px 2%}.studio-toolbar-actions{width:100%}}
@media(max-width:760px){.studio-layout{grid-template-columns:1fr}.studio-controls{max-height:none;border:0}.studio-preview-panel{position:static;border-top:1px solid var(--studio-border)}.studio-preview-wrap{min-height:0;padding:12px}.studio-preview-wrap iframe{height:670px}.studio-toolbar{padding:18px}.studio-toolbar-actions button{padding:9px;font-size:11px}.studio-panel{padding:20px}.studio-photo-grid{grid-template-columns:repeat(3,1fr)}.studio-photo-grid img{height:100px}.studio-modal{padding:10px}.studio-modal-card{padding:18px}.studio-media-grid{grid-template-columns:repeat(2,1fr)}.studio-preview-wrap.mobile iframe{height:700px}.cms-image-right>div:first-child,.cms-image-right>div:last-child{order:initial}.cms-space-large.section{padding-top:90px;padding-bottom:90px}.cms-nav-link{white-space:nowrap}nav{flex-wrap:wrap;row-gap:12px}header{height:auto;min-height:112px}.cms-title{font-size:42px}.studio-blocks li small{max-width:260px}}

header{height:auto;min-height:112px;padding-top:24px;padding-bottom:24px}header nav{flex-wrap:wrap;justify-content:center;row-gap:14px}.brand,#lang{flex-shrink:0}.project .overlay{color:#f2f0eb}

.cms-hero{color:#eee}.cms-hero .eyebrow{color:#bdbfc0}

/* Standalone top image, followed by the editable biography. */
.cms-image-full-bleed.section{padding:0}.cms-image-full-bleed .cms-figure>img{width:100%;height:auto;max-height:85svh;object-fit:contain;background:#0b0c0d}.about-grid.cms-without-image{display:block;max-width:900px;margin:0 auto}.cms-without-image>div:first-child{display:none}.cms-without-image .body-copy{max-width:680px}

/* Legal links sit directly below the copyright on every page. */
.footer-credit{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
footer .footer-legal{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-start}
footer .footer-legal a{font:inherit;letter-spacing:inherit;line-height:1.6}
footer .footer-legal a:after{display:none}
.footer-legal a:hover,.privacy-form-link:hover{text-decoration:underline;text-underline-offset:3px}
.privacy-form-link{text-decoration:underline;text-underline-offset:3px}
.legal-page .section{padding-top:24px;padding-bottom:24px}
.legal-page .section:first-child{padding-top:80px;padding-bottom:30px}
.legal-page .big-title{font-size:clamp(32px,4.5vw,72px);overflow-wrap:anywhere;line-height:1.15;margin:25px 0}
.legal-page .cms-title{font-size:clamp(26px,3vw,38px);margin:12px 0 20px}
.legal-page .body-copy{max-width:72ch;color:var(--muted);overflow-wrap:anywhere}
.legal-page .section:last-child{padding-bottom:80px}
@media(max-width:760px){.footer-credit{gap:9px}.legal-page .section:first-child{padding-top:50px}}

/* Clearer hero typography and a direct enquiry path. */
.hero h1{letter-spacing:0;font-size:clamp(58px,8vw,136px);max-width:none}
.hero-links{display:flex;gap:30px;flex-wrap:wrap;align-items:center}
.hero-links .arrow-link span{margin-left:18px}
.cms-booking .form-layout>div>.note{white-space:pre-line}
.booking-success{padding:20px;border:1px solid var(--cms-accent,#ddd);color:var(--fg);font-size:14px;line-height:1.8}
@media(max-width:760px){.hero h1{font-size:clamp(46px,10vw,65px);letter-spacing:0}.hero-bottom{gap:20px;flex-wrap:wrap}.hero-links{gap:18px}.hero-bottom p{max-width:100%}}
