/* SiteBloom design system: Manrope / DM Sans / Georgia Italic. */
:root{--font-display:'Manrope',Arial,sans-serif;--font-body:'DM Sans',Arial,sans-serif;--font-accent:Georgia,'Times New Roman',serif;--type-xs:.75rem;--type-sm:.875rem;--type-body:1rem;--type-lead:1.125rem;--type-h3:1.5rem;--type-h2:clamp(2.25rem,4.2vw,3.75rem);--type-hero:clamp(3.25rem,5.8vw,5.5rem);--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--space-8:64px;--space-12:96px;--radius-control:8px;--radius-panel:12px;--muted:#506658;--line:#c8d0c2}
body{font-family:var(--font-body);font-size:var(--type-body);line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,nav,.button,button,summary,label,.brand{font-family:var(--font-display)}em{font-family:var(--font-accent);font-style:italic;font-weight:400;letter-spacing:-.045em}.hero h1{font-family:var(--font-display);font-size:var(--type-hero);line-height:1.08;letter-spacing:-.06em;font-weight:500;max-width:720px}.hero h1 em{font-family:var(--font-accent);font-size:1.04em;letter-spacing:-.05em}.section h2{font:500 var(--type-h2)/1.14 var(--font-display);letter-spacing:-.045em}.section h2 em{font-family:var(--font-accent);letter-spacing:-.04em}.contact h2{font:500 clamp(3rem,5.5vw,5rem)/1.12 var(--font-display);letter-spacing:-.05em}.contact h2 em{font-family:var(--font-accent);letter-spacing:-.045em}.eyebrow{font-family:var(--font-display);font-size:.6875rem;letter-spacing:.15em;font-weight:700;line-height:1.6;margin-bottom:var(--space-3)}.hero .eyebrow{font-size:.6875rem}.intro{font-size:var(--type-lead);line-height:1.75}.section{padding-top:var(--space-12);padding-bottom:var(--space-12)}.section-heading{margin-bottom:var(--space-4)}nav{font-size:var(--type-xs);gap:24px}.button{min-height:48px;font-size:var(--type-sm);font-weight:600;border-radius:var(--radius-control);padding:15px 22px;line-height:1.4;gap:18px}.button.small{min-height:44px;font-size:var(--type-xs)}.text-link{font-family:var(--font-display);font-size:var(--type-sm);font-weight:600;gap:10px;line-height:1.5}.hero-note,.caption,.brief-privacy{font-size:var(--type-xs)!important;line-height:1.8}.features h3,.integration-grid h3,.steps h3{font:500 1.25rem/1.4 var(--font-display);letter-spacing:-.025em}.features p,.steps p,.integration-grid p,.style-description p,.plan-grid p:not(.eyebrow),.approach-copy p,.integration-heading>div:last-child p{font-size:var(--type-sm);line-height:1.8}.approach-copy p:first-child{font-size:var(--type-lead)}.features article>span{font-size:.6875rem}.line-icon{height:80px;display:flex;align-items:center;padding:0}.integration-grid .integration-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #b8c8a7;border-radius:12px;margin-bottom:24px}.integration-icon .mi{font-size:26px}.line-icon .mi{font-size:38px}.integration-grid article{padding:var(--space-4)}.integration-grid{border-radius:var(--radius-panel);overflow:hidden}.style-card,.plan-grid article,.project-brief,.working-examples{border-radius:var(--radius-panel)}.style-description h3{font:500 1.625rem/1.25 var(--font-display);letter-spacing:-.04em}.style-description>.eyebrow{font-size:.625rem;letter-spacing:.12em}.style-description .style-features{font-size:var(--type-xs)}.style-actions .button,.style-actions .text-link{font-size:var(--type-xs)}.plan-grid h3{font:500 2.25rem/1.2 var(--font-display);letter-spacing:-.04em}.plan-grid ul{font-size:var(--type-sm)}.scope-comparison h3,.brief-head h3{font:500 var(--type-h3)/1.3 var(--font-display);letter-spacing:-.03em}.scope-columns span{font-family:var(--font-display);font-size:.6875rem}.scope-columns p{font-size:var(--type-sm);line-height:1.8}summary{font-size:var(--type-body);font-weight:500;line-height:1.5}details p{font-size:var(--type-sm);line-height:1.8}.brief-fields label{font-size:var(--type-xs)}.brief-fields input,.brief-fields select,.brief-fields textarea{font-family:var(--font-body);font-size:var(--type-sm);min-height:48px;line-height:1.5}.brief-head p{font-size:var(--type-sm)}.footer-top p,.footer-top>div{font-size:var(--type-xs)}.footer-bottom{font-size:.6875rem;line-height:1.8}.contact-email{font-size:var(--type-sm)!important}.steps b{font-family:var(--font-accent);font-style:italic;font-size:2.25rem}.mi{font-family:'Material Symbols Outlined'!important;font-weight:400!important;font-style:normal!important;font-size:22px;line-height:1;letter-spacing:normal!important;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:'liga';font-feature-settings:'liga';-webkit-font-smoothing:antialiased;font-variation-settings:'FILL' 0,'wght' 350,'GRAD' 0,'opsz' 24;vertical-align:middle;flex-shrink:0}.button .mi,.text-link .mi{font-size:20px}.menu{min-width:44px;min-height:44px;align-items:center;justify-content:center}.menu .mi{font-size:24px}.close .mi{font-size:26px}.material-arrow{vertical-align:-.15em;margin-left:4px}.mobile-enquiry .mi{font-size:19px;vertical-align:middle;margin-left:10px}.gallery-intro p:not(.eyebrow){font-size:var(--type-sm)}@media(max-width:1000px){header{gap:20px}nav{gap:16px;font-size:11px}.integration-grid article{padding:24px}}@media(max-width:700px){:root{--space-12:64px;--type-hero:clamp(3rem,11.5vw,4rem);--type-h2:clamp(2.1rem,8.5vw,2.75rem)}.menu{display:flex}.hero h1{letter-spacing:-.055em}.hero .eyebrow{font-size:.625rem}.intro{font-size:var(--type-body)}.section h2{letter-spacing:-.04em}.hero-note{font-size:.6875rem!important}.hero .actions{gap:20px}.section-heading>p{font-size:var(--type-sm)}.features h3{font-size:1.25rem}.integration-grid{grid-template-columns:1fr}.integration-grid article{display:grid;grid-template-columns:48px 1fr;gap:0 18px;padding:24px}.integration-grid .integration-icon{grid-column:1;grid-row:1/3;margin:0}.integration-grid h3{margin:0 0 8px}.integration-grid p{grid-column:2}.integration-end .button{width:100%;justify-content:center}.style-actions{gap:18px}.plan-grid article{padding:28px}.contact h2{font-size:clamp(2.5rem,10vw,3.5rem)}.contact .eyebrow{font-size:.625rem}.brief-fields input,.brief-fields select,.brief-fields textarea{font-size:16px}.project-brief .button{width:100%;justify-content:center}.footer-top>div{flex-wrap:wrap}.scope-comparison{padding-top:32px}}
