/* CMS bindings are transparent to the original page layout. */
cms-text{display:contents}
[hidden]{display:none!important}
html[data-cms-background] body{background:var(--paper)}
html[data-cms-background] .site-header{background:color-mix(in srgb,var(--paper) 94%,transparent)}
html[data-cms-accent] .hero-visual,html[data-cms-accent] .certificates-section,html[data-cms-accent] .price-art,html[data-cms-accent] .service-tag,html[data-cms-accent] .model-count,html[data-cms-accent] .filter-button.active{background:var(--orange)}
html[data-cms-accent] .hero h1 span,html[data-cms-accent] .hero .eyebrow,html[data-cms-accent] .company h2 em,html[data-cms-accent] .stats strong span,html[data-cms-accent] .equipment-section .eyebrow{color:var(--orange)}
html[data-cms-accent] .header-price,html[data-cms-accent] .mobile-price,html[data-cms-accent] .button-primary{border-color:var(--orange);box-shadow:0 5px 16px color-mix(in srgb,var(--orange) 18%,transparent)}
html[data-cms-accent] .button-primary:hover,html[data-cms-accent] .header-price:hover,html[data-cms-accent] .mobile-price:hover{background:color-mix(in srgb,var(--orange) 78%,white)}
html[data-cms-accent] .text-link,html[data-cms-accent] .model-inquiry,html[data-cms-accent] .service-row[open],html[data-cms-accent] .travel-notice{background:color-mix(in srgb,var(--orange) 9%,white);border-color:color-mix(in srgb,var(--orange) 50%,white);color:var(--ink)}
html[data-cms-ink] .stats,html[data-cms-ink] .equipment-section,html[data-cms-ink] .company{background:var(--ink)}
html[data-cms-ink] .equipment-card,html[data-cms-ink] .round-control{color:var(--ink)}
html[data-cms-surface] .contact-section,html[data-cms-surface] .equipment-card-copy,html[data-cms-surface] .certificate-zoom{background:var(--pale)}
html[data-cms-radius] .button,html[data-cms-radius] .header-price,html[data-cms-radius] .hero-visual,html[data-cms-radius] .stats,html[data-cms-radius] .equipment-card,html[data-cms-radius] .equipment-help,html[data-cms-radius] .certificate-card,html[data-cms-radius] dialog,html[data-cms-radius] .price-block,html[data-cms-radius] .price-level,html[data-cms-radius] .price-download,html[data-cms-radius] .travel-notice,html[data-cms-radius] .price-service-list,html[data-cms-radius] .price-pdf-section details{border-radius:var(--cms-radius)}
html[data-cms-motion="off"],html[data-cms-motion="off"] *{scroll-behavior:auto!important}
html[data-cms-motion="off"] *,html[data-cms-motion="off"] *::before,html[data-cms-motion="off"] *::after{animation:none!important;transition:none!important}
.cms-custom-brand{min-width:0}.site-header .cms-custom-logo,.site-footer .cms-custom-logo{display:block;width:auto;max-width:220px;height:60px;object-fit:contain}
.certificate-empty{font-size:14px;padding:36px 0;max-width:80vw}
.cms-pdf-viewer{padding:16px;background:var(--pale)}.cms-pdf-viewer iframe{display:block;border:0;width:100%;min-height:640px;height:78vh;background:#fff}
.cms-preview-notice{position:fixed;right:16px;bottom:16px;z-index:10000;background:#102f2b;color:#fff;padding:12px 16px;border:1px solid #ff741c;border-radius:9px;box-shadow:0 5px 20px #0003;font:12px/1.5 Arial,sans-serif;display:flex;gap:18px;align-items:center}.cms-preview-notice a{color:#ffad73;text-decoration:underline}
@media(max-width:650px){.site-header .cms-custom-logo{max-width:150px;height:42px}.cms-pdf-viewer{padding:5px}.cms-pdf-viewer iframe{min-height:480px}.cms-preview-notice{left:10px;right:10px;bottom:10px;justify-content:space-between;font-size:11px}}
html[data-cms-accent] .service-row[open] h3,html[data-cms-accent] .price-block-number,html[data-cms-accent] .travel-notice>span,html[data-cms-accent] .price-level-header>span{color:var(--orange)}
html[data-cms-ink] .button-primary,html[data-cms-ink] .header-price,html[data-cms-ink] .mobile-price{color:var(--ink)}

/* The supplied Circe lettering is part of the vector artwork, not live site text. */
.site-header .brand,.site-footer .brand{min-width:0}
.site-header .brand>.brand-logo,.site-footer .brand>.brand-logo{display:block;width:264px;max-width:100%;height:auto;aspect-ratio:22/5;object-fit:contain;flex:none;transform:none}
.site-header .brand>.brand-logo{animation:brandLogoAppear .65s ease both}
@keyframes brandLogoAppear{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1150px){.site-header .brand>.brand-logo{width:238px}}
@media(max-width:650px){.site-header .brand>.brand-logo{width:198px}.site-footer .brand>.brand-logo{width:264px}}
@media(max-width:380px){.site-header .brand>.brand-logo{width:152px}}
@media(prefers-reduced-motion:reduce){.site-header .brand>.brand-logo{animation:none}}
