:root{font-family:Arial,Helvetica,sans-serif;color:#202622;background:#f4f3ef;font-synthesis:none;--paper:#f4f3ef;--ink:#202622;--muted:#69736b;--green:#315748;--line:#dddfd7;--dark:#252626;--accent:#d8a77c}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b67a43;outline-offset:4px}img{max-width:100%;display:block}button{border:0}h1,h2,h3,p{margin-top:0}a{text-underline-offset:4px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 19px;border-radius:6px;text-decoration:none;font-size:14px;font-weight:700;transition:background .15s}.primary{background:var(--green);color:#fff}.primary:hover{background:#234536}.secondary{background:#fff;border:1px solid var(--line);color:var(--ink)}.secondary:hover{background:#e9ece5}.text-button{background:transparent;color:var(--green);padding:10px 0;font-size:13px;font-weight:700;text-decoration:underline}.icon-button{width:42px;height:42px;border:1px solid var(--line);background:white;border-radius:5px;font-size:20px;flex-shrink:0}.notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);width:max-content;padding:15px 22px;border-radius:7px;color:#fff;background:#234536;z-index:20;box-shadow:0 6px 30px #0003;display:none}.notice.visible{display:block}.error{color:#9d3030;font-size:13px}.prototype-bar{background:#edeae3;color:#535650;padding:10px 5%;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px}.prototype-bar a{font-weight:700}.site{background:var(--dark);color:#f0eee8;min-height:100vh}.site-inner{width:88%;max-width:1180px;margin:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:23px 0;border-bottom:1px solid #ffffff21}.brand{display:flex;align-items:center;gap:18px;text-decoration:none}.brand img{width:98px}.brand-description{font-size:11px;line-height:1.7;color:#b9bcb4;letter-spacing:1px}.site-nav{display:flex;align-items:center;gap:30px;font-size:13px}.site-nav a{text-decoration:none;white-space:nowrap}.site-nav a:hover{color:var(--accent)}.site-nav a.active{border-bottom:1px solid var(--accent);padding-bottom:7px}.site-nav .contact-link{border:1px solid #777970;padding:12px 17px;border-radius:3px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding:65px 0 50px}.hero .eyebrow{color:var(--accent);display:flex;align-items:center;gap:12px}.hero .eyebrow:before{content:'';height:1px;width:27px;background:var(--accent)}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.5vw,65px);font-weight:400;line-height:1.06;letter-spacing:-1.7px;margin:22px 0 25px;white-space:pre-line;overflow-wrap:anywhere}.hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:#bfc0b8;max-width:400px;white-space:pre-line}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:29px}.site .button{border-radius:2px}.site .warm{background:#d6a67c;color:#232622}.site .warm:hover{background:#e5b78e}.quiet-link{font-size:13px;color:#e6e4dc;text-decoration:none}.hero-photo{margin:0;position:relative}.hero-photo img{width:100%;height:390px;object-fit:cover;border-radius:2px}.hero-photo figcaption{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#a9aca5;margin-top:13px;display:flex;justify-content:space-between;gap:10px}.hero-photo:before{content:'';position:absolute;left:-12px;top:-12px;width:70px;height:70px;border-top:1px solid #d8a77c66;border-left:1px solid #d8a77c66;pointer-events:none}.trust-row{display:flex;gap:25px;justify-content:space-between;border-top:1px solid #ffffff21;border-bottom:1px solid #ffffff21;padding:20px 0;color:#babdb5;font-size:11px;letter-spacing:1.3px;text-transform:uppercase}.trust-row span:before{content:'+';color:var(--accent);margin-right:11px}.services{padding:65px 0}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.section-top .eyebrow{color:var(--accent);margin-bottom:10px}.site h2{font-family:Georgia,'Times New Roman',serif;font-size:35px;font-weight:400;letter-spacing:-.6px;margin-bottom:0}.section-top>p{max-width:285px;font-size:13px;line-height:1.8;color:#aeb4a9;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 28px}.service-item{display:flex;align-items:center;gap:15px;padding:21px 0;border-bottom:1px solid #ffffff24;font-size:14px;line-height:1.6}.service-number{font-size:11px;color:#8b9186}.service-arrow{margin-left:auto;color:var(--accent)}.work-section{background:#e8e5dc;color:#272b26;padding:60px 0}.work-section .eyebrow{color:#6e775f}.work-section .section-top>p{color:#66705f}.work-gallery{display:grid;gap:12px;grid-template-columns:1.35fr 1fr 1fr}.work-gallery figure{margin:0;min-width:0}.work-gallery img{width:100%;height:260px;object-fit:cover}.work-gallery figcaption{font-size:12px;color:#555e50;margin-top:12px;line-height:1.6;overflow-wrap:anywhere}.work-gallery.grid{grid-template-columns:repeat(2,1fr)}.work-gallery.grid img{height:240px}.work-gallery.featured figure:first-child{grid-row:span 2}.work-gallery.featured:has(figure:nth-child(4)){grid-template-columns:1.35fr 1fr}.work-gallery.featured:has(figure:nth-child(4)) figure:first-child img{height:400px}.work-gallery.slides{display:block}.work-gallery.slides img{height:390px}.slide-controls{display:flex;align-items:center;justify-content:space-between;margin-top:20px}.slide-controls>div{display:flex;gap:8px}.slide-controls .icon-button{background:transparent;border-color:#a9b09f}.slide-controls .slide-count{font-size:12px;letter-spacing:2px}.about-section{padding:60px 0;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.about-section .eyebrow{color:var(--accent)}.about-section p:not(.eyebrow){color:#bfc0b8;font-size:14px;line-height:1.9}.norton-link{font-size:13px;display:inline-block;margin-top:15px;color:var(--accent)}.contact-section{background:#303430;padding:40px 0}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-inner h2{font-size:29px}.contact-inner p{font-size:13px;color:#bec4b7;margin:12px 0 0}.contact-links{display:flex;flex-direction:column;gap:9px;text-align:right}.contact-links a:first-child{font-family:Georgia,serif;font-size:27px;text-decoration:none;color:#f4e8d8}.contact-links a:last-child{font-size:13px;color:#c2c9ba}.site-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:10px;color:#90988b;padding:26px 0;line-height:1.7}.site-footer a{color:#bdc6b5}.editor-header{height:78px;background:white;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 28px;gap:20px}.editor-brand{display:flex;align-items:center;gap:16px}.editor-monogram{background:#29352e;color:#fff;border-radius:6px;padding:11px 10px;font-weight:800;letter-spacing:-1px;font-size:20px}.editor-brand strong{font-size:15px}.editor-brand small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.editor-top-actions{display:flex;gap:18px;align-items:center}.editor-top-actions a{font-size:13px;text-decoration:none}.editor-shell{display:grid;grid-template-columns:208px 380px minmax(0,1fr);height:calc(100vh - 78px)}.sidebar{background:#eeeee8;border-right:1px solid var(--line);padding:32px 18px;display:flex;flex-direction:column}.sidebar .eyebrow{color:#7b8275;font-size:10px;letter-spacing:1.5px;padding-left:12px;margin-bottom:12px}.page-current{padding:13px 14px;background:#dce4d8;color:#284b39;font-size:14px;font-weight:700;border-radius:5px;display:flex;justify-content:space-between}.future-page{padding:15px 14px;font-size:13px;color:#737d6d}.sidebar-note{font-size:11px;color:#77806f;line-height:1.7;padding:12px}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:20px 12px 0;font-size:12px;color:#5a6754;line-height:1.8}.sidebar-bottom strong{color:#324a34;display:block}.editor-panel{overflow:auto;background:#fafaf7;border-right:1px solid var(--line);padding:28px 24px 100px}.panel-intro{margin-bottom:25px}.panel-intro .eyebrow{color:#77836f;font-size:10px;margin-bottom:8px}.panel-intro h1{font-family:Georgia,serif;font-size:34px;font-weight:400;margin-bottom:9px}.panel-intro p:last-child{font-size:13px;line-height:1.65;color:var(--muted);margin:0}.draft-status{font-size:11px;background:#edf0e8;color:#4a6346;padding:10px 12px;border-radius:5px;margin-bottom:20px;line-height:1.6}.draft-status.dirty{background:#f5ecdc;color:#805926}details{border-bottom:1px solid var(--line);padding:0 0 16px;margin-bottom:17px}summary{cursor:pointer;font-size:14px;font-weight:700;list-style:none;display:flex;align-items:center;gap:10px;min-height:42px}summary::-webkit-details-marker{display:none}summary:after{content:'+';margin-left:auto;font-size:20px;font-weight:400;color:#77816f}details[open]>summary:after{content:'−'}.section-icon{width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;background:#e9ece3;border-radius:5px;color:#58704e;font-size:14px}.field{display:block;margin-top:16px;font-size:12px;font-weight:700}.field input,.field textarea,.field select{display:block;width:100%;margin-top:8px;background:white;border:1px solid #cdd3c5;border-radius:5px;padding:11px 12px;font-size:14px;font-weight:400;color:#253025;line-height:1.5}.field textarea{resize:vertical;min-height:110px}.field small,.hint{display:block;font-size:11px;color:#72816b;line-height:1.65;font-weight:400;margin-top:7px}.image-edit{position:relative;margin-top:10px}.image-edit img{height:154px;width:100%;object-fit:cover;border-radius:5px}.image-edit .button{position:absolute;bottom:10px;left:10px;min-height:36px;font-size:12px;padding:9px 12px}.range-row{display:grid;grid-template-columns:64px 1fr;gap:10px;align-items:center;margin-top:12px;font-size:11px;color:#606f58}.range-row input{width:100%;accent-color:var(--green);min-height:25px}.photo-card{margin:15px 0;padding:12px;border:1px solid var(--line);border-radius:6px;background:#fff}.photo-card-header{display:flex;gap:12px;align-items:center}.photo-card-header img{width:74px;height:60px;object-fit:cover;border-radius:3px}.photo-card-header strong{display:block;font-size:12px}.photo-card-header .text-button{font-size:11px;padding:7px 0}.photo-order{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.photo-order>div{display:flex;gap:6px}.photo-order .icon-button{width:38px;height:38px;font-size:17px}.remove-photo{color:#8e4c3a;font-size:11px;background:transparent;min-height:38px}.photo-card .field{font-size:11px;margin-top:8px}.photo-card .field input{font-size:12px;padding:8px}.layout-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.layout-choice{background:#fff;border:1px solid var(--line);border-radius:5px;padding:11px 4px;color:#67715f;font-size:10px;min-height:64px}.layout-choice b{display:block;font-size:21px;margin-bottom:7px;font-weight:400}.layout-choice.selected{border:2px solid var(--green);background:#edf2e8;color:#294c37}.full-width{width:100%}.service-edit{display:flex;gap:5px;margin-top:10px}.service-edit input{min-width:0;flex:1;border:1px solid #cdd3c5;background:white;border-radius:4px;padding:9px;font-size:12px}.service-edit button{width:32px;min-height:39px;background:#e9ece3;color:#4d6145;border-radius:4px}.recovery{border-top:1px solid var(--line);padding-top:15px;margin-top:24px}.recovery .text-button{font-size:12px;text-align:left}.preview-pane{background:#e7e9e2;padding:0 26px 26px;display:flex;flex-direction:column;min-width:0}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:66px;font-size:11px;color:#64735b}.preview-toolbar strong{display:block;color:#32482f;font-size:12px;margin-bottom:4px}.device-controls{display:flex;background:#d9dfd1;padding:3px;border-radius:5px}.device-controls button{background:transparent;padding:8px 10px;font-size:11px;border-radius:3px;color:#54644b;min-height:34px}.device-controls button.selected{background:white;color:#24391f;box-shadow:0 1px 4px #0001}.preview-window{background:var(--dark);border-radius:8px;overflow:hidden;box-shadow:0 10px 30px #34452c20;flex:1;min-height:0;transition:max-width .2s;width:100%;margin:auto;display:flex;flex-direction:column}.preview-window.phone{max-width:390px}.browser-chrome{height:30px;background:#f8f8f5;display:flex;align-items:center;gap:5px;padding:0 12px;flex-shrink:0}.browser-chrome i{width:5px;height:5px;border-radius:50%;background:#c5cbbf}.browser-chrome span{font-size:9px;color:#7b8673;margin:auto;padding-right:25px}iframe{width:100%;border:0;flex:1;background:var(--dark)}.preview-footnote{font-size:10px;text-align:center;color:#68785e;margin:15px 0 0}.mobile-view-tabs{display:none}dialog{border:0;border-radius:12px;padding:32px;max-width:540px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 20px 100px #0005}dialog::backdrop{background:#17241bcc;backdrop-filter:blur(4px)}dialog h2{font-family:Georgia,serif;font-size:30px;font-weight:400;margin-bottom:15px}dialog p:not(.eyebrow){font-size:14px;color:#67705e;line-height:1.8}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:30px}.dialog-icon{width:44px;height:44px;border-radius:50%;background:#e5ecdf;color:#315748;display:grid;place-items:center;font-size:23px;margin-bottom:24px}.dialog-heading{display:flex;justify-content:space-between;gap:20px}.photo-library{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.library-item{background:#f0f2eb;padding:5px;border-radius:5px;text-align:left}.library-item img{width:100%;height:85px;object-fit:cover;border-radius:3px}.library-item span{font-size:10px;display:block;padding:8px 4px;line-height:1.5}.upload-label{cursor:pointer}#photo-dialog{max-width:660px}.embedded .site-inner{width:88%}.embedded .hero{gap:6%;padding:45px 0 35px}.embedded .hero h1{font-size:clamp(33px,4.8vw,57px)}.embedded .hero-photo img{height:300px}.embedded .site-header{padding:16px 0}.embedded .brand-description{display:none}.embedded .site-nav{gap:18px;font-size:11px}.embedded .brand img{width:70px}.embedded .hero-copy>p:not(.eyebrow){font-size:13px}.embedded .hero-actions{gap:12px}.embedded .button{font-size:11px;padding:11px 13px}.embedded .trust-row{font-size:9px;gap:8px}.embedded .services,.embedded .work-section{padding:40px 0}.embedded .site h2{font-size:29px}.embedded .work-gallery img{height:185px}.embedded .section-top>p{font-size:11px;max-width:200px}.embedded .service-item{font-size:12px;gap:9px}
@media(min-width:1500px){.editor-shell{grid-template-columns:210px 405px minmax(0,1fr)}.preview-pane{padding-left:40px;padding-right:40px}}
@media(max-width:1150px){.editor-shell{grid-template-columns:155px 340px minmax(0,1fr)}.sidebar{padding:30px 10px}.editor-panel{padding:25px 20px 80px}.preview-pane{padding:0 16px 20px}.site-nav{gap:20px}.brand-description{display:none}.hero-photo img{height:340px}}
@media(max-width:950px){.editor-shell{grid-template-columns:340px minmax(0,1fr)}.sidebar{display:none}.site-nav{gap:16px;font-size:12px}.hero{gap:6%;padding:45px 0}.hero-photo img{height:320px}.service-grid{grid-template-columns:repeat(2,1fr)}.work-gallery img{height:210px}.trust-row{font-size:10px;gap:10px}.brand img{width:85px}}
@media(max-width:720px){.editor-header{height:70px;padding:0 16px}.editor-brand{gap:10px}.editor-brand strong{font-size:13px}.editor-top-actions{gap:10px}.editor-top-actions>a{display:none}.editor-top-actions .button{font-size:12px;padding:10px 12px}.editor-shell{display:block;height:calc(100dvh - 118px)}.mobile-view-tabs{display:flex;gap:4px;background:white;padding:0 16px;border-bottom:1px solid var(--line);height:48px}.mobile-view-tabs button{flex:1;background:white;font-size:13px;color:#637359;border-bottom:3px solid transparent}.mobile-view-tabs button.selected{border-color:var(--green);color:var(--green);font-weight:700}.editor-panel{height:100%;border:0;padding:26px 22px 65px}.preview-pane{height:100%;display:none}.editor-shell.show-preview .editor-panel{display:none}.editor-shell.show-preview .preview-pane{display:flex}.preview-toolbar{min-height:60px}.preview-footnote{font-size:9px}.hero h1{font-size:43px}.hero-photo img{height:290px}.site-nav .contact-link{padding:10px}.site-nav{gap:13px}.site-header{gap:12px}.site .button{font-size:12px}.trust-row{flex-wrap:wrap;justify-content:flex-start;gap:13px 24px}.section-top>p{display:none}.work-gallery{grid-template-columns:1fr 1fr}.work-gallery.featured figure:first-child{grid-column:1/-1;grid-row:auto}.work-gallery.featured figure:first-child img{height:260px}.work-gallery.featured:has(figure:nth-child(4)){grid-template-columns:1fr 1fr}.work-gallery.featured:has(figure:nth-child(4)) figure:first-child img{height:260px}.work-gallery img{height:175px}.about-section{gap:7%}.contact-inner{align-items:flex-start}.contact-inner h2{font-size:25px}.contact-links a:first-child{font-size:23px}}
@media(max-width:540px){.site-inner{width:88%}.site-header{align-items:center;padding:16px 0;flex-wrap:wrap;gap:14px}.brand img{width:72px}.site-nav{gap:14px;flex-wrap:wrap;font-size:11px}.site-nav .contact-link{border:0;padding:0}.site-nav a.active{padding-bottom:4px}.hero,.embedded .hero{grid-template-columns:1fr;gap:30px;padding:37px 0 28px}.hero h1,.embedded .hero h1{font-size:43px;letter-spacing:-1.4px;margin:17px 0 18px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-photo img,.embedded .hero-photo img{height:290px}.hero-photo:before{display:none}.hero-actions{margin-top:21px}.trust-row{font-size:9px;padding:18px 0;gap:12px 18px}.services{padding:38px 0}.site h2{font-size:29px}.service-grid{grid-template-columns:1fr}.service-item{padding:16px 0}.work-section{padding:38px 0}.work-gallery.grid img{height:160px}.work-gallery.slides img{height:280px}.about-section{grid-template-columns:1fr;gap:20px;padding:38px 0}.contact-inner{display:block}.contact-links{text-align:left;margin-top:24px}.site-footer{display:block;font-size:10px}.site-footer>span{display:block;margin-bottom:8px}.prototype-bar{font-size:10px;padding:9px 6%}.embedded .site-nav{font-size:10px;gap:12px}.photo-library{grid-template-columns:repeat(2,1fr)}dialog{padding:24px}.dialog-actions{flex-wrap:wrap}.preview-toolbar{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* A warm highlight identifies links without decorative arrows. */
.site a {
  transition: color .16s ease, background-color .16s ease,
    border-color .16s ease, box-shadow .16s ease, text-shadow .16s ease;
}
.site a:not(.button):is(:hover, :focus-visible) {
  color: #ffe0bd;
  text-shadow: 0 0 14px #eaba8c80;
}
.site-nav .contact-link:is(:hover, :focus-visible) {
  border-color: #e9bc90;
  background: #d8a77c18;
  box-shadow: 0 0 18px #d8a77c20;
}
.site .warm:is(:hover, :focus-visible) {
  color: #171d18;
  background: #f0c398;
  box-shadow: 0 0 22px #d8a77c44;
}
.site a:not(.button):active { color: #fff0df; }
.brand:is(:hover, :focus-visible) img { filter: brightness(1.25); }
.brand img { max-height: 76px; object-fit: contain; }
.site .brand-description, .embedded .brand-description {
  display: block;
  white-space: pre-line;
  text-transform: uppercase;
  max-width: 160px;
  overflow-wrap: anywhere;
  color: inherit;
}
.brand { color: #b9bcb4; min-width: 0; }
.embedded .brand-description { font-size: 9px; max-width: 120px; }
.site-header { flex-wrap: wrap; }
.logo-edit { background: #252626; border-radius: 5px; padding: 18px 18px 62px; }
.logo-edit img { height: 96px; object-fit: contain; }
.editor-monogram { text-decoration: none; }
.editor-top-actions a:is(:hover, :focus-visible),
.text-button:is(:hover, :focus-visible),
.prototype-bar a:is(:hover, :focus-visible) {
  color: #245b36;
  text-decoration: underline;
  text-shadow: 0 0 12px #65855733;
}
@media (max-width: 540px) {
  .site .brand-description { font-size: 9px; }
  .site-header .brand { gap: 12px; }
  .site-header .site-nav { width: 100%; justify-content: space-between; padding: 8px 0 3px; }
}
@media (prefers-reduced-motion: reduce) {
  .site a { transition: none; }
}

[hidden]{display:none!important}.multiline{white-space:pre-line}.skip-link{position:absolute;top:-100px;background:white;color:#222;padding:12px;z-index:30}.skip-link:focus{top:5px}.site .work-gallery.featured figure:first-child{grid-row:auto}.site .work-gallery.featured:has(figure:nth-child(4)) figure:first-child{grid-column:1/-1}.site .language-link{font-size:11px;border-left:1px solid #ffffff30;padding-left:14px}

/* Respect the resolution of legacy photos; larger uploads can still fill the layout. */
.enquiry-section{display:grid;grid-template-columns:1fr 1.25fr;gap:7%;padding:60px 0 75px;border-top:1px solid #ffffff21}
.enquiry-intro .eyebrow{color:var(--accent)}
.enquiry-intro>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#c5c8c0;max-width:360px}
.enquiry-panel{background:#f4f3ef;color:#202622;border-radius:6px;padding:28px;min-width:0}
.enquiry-panel fieldset{padding:0;margin:0;border:0;min-width:0}
.enquiry-panel label{display:block;font-size:13px;font-weight:700;margin-bottom:18px}
.enquiry-panel label span{font-weight:400;color:#555e50}
.enquiry-panel input,.enquiry-panel textarea{display:block;width:100%;min-width:0;margin-top:8px;padding:12px;border:1px solid #adb5a8;border-radius:4px;background:white;color:#202622;font-size:16px;line-height:1.5}
.enquiry-panel textarea{resize:vertical;min-height:150px}
.enquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.enquiry-note{font-size:12px;line-height:1.7;color:#555e50;margin-bottom:16px}
.enquiry-status{padding:16px;border-radius:4px;font-size:14px;line-height:1.6;margin-bottom:20px}
.enquiry-status p{margin:0}.enquiry-status ul{margin-bottom:0;padding-left:20px}
.enquiry-status.success{background:#e2ede1;color:#234536}.enquiry-status.error{background:#f7e5de;color:#842b20}
.enquiry-panel [aria-invalid=true]{border-color:#a43b29}
.enquiry-trap{display:none}
@media(max-width:720px){.enquiry-section{grid-template-columns:1fr;gap:20px;padding:35px 0 45px}.enquiry-panel{padding:20px}.enquiry-fields{grid-template-columns:1fr;gap:0}.enquiry-panel .button{width:100%}}
.caption-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.caption-options .field{min-width:0}
.site .photo-caption.caption-standard{font-family:Arial,Helvetica,sans-serif}
.site .photo-caption.caption-classic{font-family:Georgia,'Times New Roman',serif}
.site .photo-caption.caption-left{text-align:left}
.site .photo-caption.caption-center{text-align:center}
.site .photo-caption.caption-right{text-align:right}
.site .hero-photo .photo-caption{overflow-wrap:anywhere}
.site .hero-photo .photo-caption>span{min-width:0}
.site .hero-photo .photo-caption.caption-center,.site .hero-photo .photo-caption.caption-right{display:block}
.site .hero-photo .photo-caption.caption-center>span,.site .hero-photo .photo-caption.caption-right>span{display:block}
.site .hero-photo .photo-caption .caption-brand{font-family:Arial,Helvetica,sans-serif;text-align:right;flex-shrink:0}
.site .responsive-photo{display:contents}
.site .hero-photo{width:min(100%,var(--photo-width));justify-self:center}
.site .hero-photo img{width:auto;height:auto;max-width:100%;max-height:390px;object-fit:scale-down;margin-inline:auto}
.site .work-gallery .photo-stage{height:260px;display:flex;align-items:center;justify-content:center;background:transparent}
.site .work-gallery .photo-stage img{width:100%;max-width:var(--photo-width);height:min(260px,var(--photo-height));object-fit:cover}
.site .work-gallery figure.photo-whole .photo-stage img{object-fit:scale-down;object-position:center!important}
.site .work-gallery.featured:has(figure:nth-child(4)) figure:first-child .photo-stage{height:330px}
.site .work-gallery.featured:has(figure:nth-child(4)) figure:first-child:not(.photo-whole) .photo-stage img{height:min(330px,var(--photo-height))}
.site .gallery-display.slides{width:min(100%,800px,var(--gallery-width));margin-inline:auto}
.site .work-gallery.slides .photo-stage{height:min(520px,62vh,var(--gallery-height));background:transparent}
.site .work-gallery.slides .photo-stage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center!important}
@media(max-width:720px){
 .site .work-gallery .photo-stage{height:190px}
 .site .work-gallery .photo-stage img{height:min(190px,var(--photo-height))}
 .site .work-gallery.featured figure:first-child .photo-stage{height:260px}
 .site .work-gallery.featured figure:first-child:not(.photo-whole) .photo-stage img{height:min(260px,var(--photo-height))}
 .site .work-gallery.slides .photo-stage{height:min(420px,62vh,var(--gallery-height))}
 .site .work-gallery.slides .photo-stage img{width:auto;height:auto;max-width:100%;max-height:100%}
}

/* Frame the photograph itself, keeping contain-mode letterboxing outside the frame. */
.site .work-gallery figure.photo-whole .photo-stage img{width:auto;height:auto;max-width:100%;max-height:100%}
.site img[data-photo-frame]:not([data-photo-frame="none"]){border-radius:8px;box-shadow:0 0 0 2px var(--photo-frame-color,#a6aaa0),0 3px 10px #00000018}
.site img[data-photo-frame="none"]{border-radius:0;box-shadow:none}
.site img[data-photo-frame="light"],.site img[data-photo-frame="auto"][data-frame-tone="light"]{--photo-frame-color:#e5e1d8}
.site img[data-photo-frame="dark"],.site img[data-photo-frame="auto"][data-frame-tone="dark"]{--photo-frame-color:#364239}

.site img[data-photo-open][role="button"]{cursor:zoom-in}
.site img[data-photo-open][role="button"]:focus-visible{outline:3px solid #b67a43;outline-offset:5px}
body.photo-viewer-open{overflow:hidden}
dialog.photo-viewer{width:96vw;max-width:1440px;height:94vh;height:94dvh;max-height:1000px;margin:auto;padding:16px 24px;border:1px solid #ffffff25;border-radius:12px;background:#171c19;color:#f4f3ef;overflow:hidden}
dialog.photo-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:12px}
dialog.photo-viewer::backdrop{background:#0b100deb;backdrop-filter:blur(3px)}
.photo-viewer-header{display:flex;justify-content:flex-end}
.photo-viewer button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:6px 12px;border:1px solid #ffffff55;border-radius:6px;background:#303a33;color:#fff;font-size:24px;line-height:1}
.photo-viewer button:hover{background:#47554a}
.photo-viewer-stage{min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;padding:3px}
.site .photo-viewer-stage img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
dialog.photo-viewer p{margin:0;font-size:14px;line-height:1.5;color:#e1e5dc}
.photo-viewer-stage p:empty{display:none}
.photo-viewer-caption{max-height:18vh;overflow:auto;text-align:center;overflow-wrap:anywhere;white-space:pre-line}
.photo-viewer-controls{display:flex;align-items:center;justify-content:center;gap:22px;min-height:44px;font-size:14px}
.photo-viewer [hidden]{display:none!important}
@media(max-width:720px){dialog.photo-viewer{width:100%;height:100vh;height:100dvh;max-height:none;max-width:none;border-radius:0;padding:12px; padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}}

.site-footer .footer-identity,.site-footer .footer-links{display:flex;gap:12px 24px;flex-wrap:wrap;align-items:center}
.site-footer .footer-links{margin-left:auto}.footer-identity span{overflow-wrap:anywhere}
.enquiry-note a{color:#315548;text-decoration:underline;font-weight:700}.enquiry-note a:hover{color:#795022}
.privacy-page{max-width:850px;margin:0 auto;padding:55px 0 65px;color:#d3d7cf;line-height:1.8}
.privacy-page h1{font:clamp(36px,5vw,58px)/1.1 Georgia,serif;color:#f4f3ef;margin:14px 0 24px}
.privacy-page h2{font:26px/1.25 Georgia,serif;color:#f4f3ef;margin-bottom:16px}
.privacy-page section{padding:28px 0;border-top:1px solid #ffffff24}.privacy-page p{margin:0 0 18px}
.privacy-heading{padding-bottom:28px}.privacy-controller{background:#2d3630;padding:28px!important;border-radius:6px;margin-bottom:10px}
.privacy-page a{color:#ddb586;text-decoration:underline;overflow-wrap:anywhere}
.cookie-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14px;table-layout:fixed}
.cookie-table th,.cookie-table td{text-align:left;vertical-align:top;padding:14px 10px;border-bottom:1px solid #ffffff24;overflow-wrap:anywhere}
.cookie-table thead{background:#2d3630}.cookie-table th:first-child{width:25%}.cookie-table th{font-weight:700}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:720px){.site-footer .footer-links{margin-left:0}.privacy-page{padding-top:28px;font-size:15px}.privacy-controller{padding:20px!important}.cookie-table{font-size:12px}.cookie-table td,.cookie-table th{padding:10px 5px}}
/* Shared header and footer: readable on both the public site and editor preview. */
.site .brand img{width:200px;max-height:none;height:auto}
.site .site-header{gap:24px;padding-block:14px 0}
.site .site-nav{font-size:14px;gap:24px}
.site .site-footer{font-size:15px;line-height:1.8;padding-block:40px;gap:28px;align-items:flex-end;color:#bdc6b5}
.site-footer .footer-content{flex:1 1 440px;min-width:0}
.site-footer .footer-identity{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.footer-registration{display:flex;flex-wrap:wrap;gap:8px 22px}
.footer-registration:not(:has(span)){display:none}
.footer-description{max-width:720px;margin:18px 0 0;overflow-wrap:anywhere}
.site-footer .footer-links{gap:12px 24px;align-items:flex-start}
.site-footer .footer-links a{padding-block:0}
.work-section+.work-section{border-top:1px solid #c8c8bd}
.section-top>p{white-space:pre-line;overflow-wrap:anywhere}
@media(max-width:720px){
 .site .brand img{width:180px}
 .site .site-header{gap:18px;padding-block:14px 4px}
 .site .site-nav{gap:12px 18px;font-size:13px;width:100%;justify-content:flex-start}
 .site .site-footer{display:flex;font-size:14px;padding-block:32px;gap:20px}
 .site-footer .footer-links{margin-left:0;width:100%}
 .site-footer .footer-links a{padding-block:5px}
}
