/* Konoha Media brand layer: fonts and colours from Design System v1.0 */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700;800&family=Source+Sans+3:wght@400;600&display=swap');
:root{--konoha-forest:#16261C;--konoha-pine:#1E3327;--konoha-lime:#C5F24D;--konoha-paper:#F5F3EC;--konoha-ink:#12140F;}
body{font-family:"Source Sans 3",system-ui,sans-serif;color:#12140F;}
body p,body li,body input,body textarea,body select,body label{font-family:"Source Sans 3",system-ui,sans-serif;}
h1,h2,h3,h4,h5,h6,
.nectar-split-heading,.nectar-split-heading *,
.nectar-responsive-text,.nectar-responsive-text *,
.nectar-text-inline-images,.nectar-text-inline-images *,
.nectar-badge,.nectar-cta,.nectar-cta *,
.testimonial_slider blockquote,.testimonial_slider blockquote *,.testimonial_slider .title,
#header-outer #logo,#header-outer #top nav ul li a,.nectar-button{font-family:"Manrope",system-ui,sans-serif !important;}
h1,h2,h3,
.nectar-split-heading,.nectar-split-heading *,
.nectar-text-inline-images,.nectar-text-inline-images *,
.nectar-post-grid-item .post-heading{font-weight:800 !important;letter-spacing:-0.03em;}
.nectar-split-heading,.nectar-split-heading *{color:#16261C;text-transform:uppercase;line-height:0.92;}
.nectar-text-inline-images{text-transform:uppercase;color:#12140F;}
.nectar-responsive-text{color:#12140F;}
.testimonial_slider blockquote{color:#12140F;font-weight:500;}
.nectar-badge{font-weight:600;}
#header-outer #logo{font-weight:800;letter-spacing:-0.02em;color:#16261C;}

/* Accent: Konoha Forest instead of Salient blue */
:root{--nectar-accent-color:#16261C !important;}
#header-outer li[class*="menu-item-btn-style"] > a{color:#C5F24D !important;}
#header-outer li[class*="menu-item-btn-style"] > a:before, #header-outer li[class*="menu-item-btn-style"] > a:after{background-color:#16261C !important;border-color:#16261C !important;}
.wpcf7 input[type=submit]{background:#16261C !important;color:#C5F24D !important;font-family:"Manrope",sans-serif !important;font-weight:700;border-radius:999px;}
/* Contact form fields */
#contact .wpcf7 input:not([type=submit]), #contact .wpcf7 select, #contact .wpcf7 textarea{width:100% !important;max-width:100%;background:#F5F3EC !important;border:1.5px solid #16261C !important;border-radius:10px !important;color:#12140F !important;font-size:16px;padding:12px 14px !important;}
#contact .wpcf7 label{color:#12140F;font-weight:600;font-size:14px;}
#contact .wpcf7 .wpcf7-form-control-wrap{display:block;width:100%;}
#contact .wpcf7 input[type=submit]{padding:14px 32px !important;border-radius:999px !important;font-size:15px !important;letter-spacing:0;text-transform:none;}
#contact .wpcf7 [class*="vc_col-"]{width:100% !important;float:none !important;padding-left:0 !important;padding-right:0 !important;}
/* Hero on Forest */
.konoha-hero .nectar-split-heading,.konoha-hero .nectar-split-heading *{color:#C5F24D !important;}
.konoha-hero .nectar-responsive-text,.konoha-hero .nectar-responsive-text *{color:#F5F3EC !important;}
/* Statement on Paper */
.konoha-statement .nectar-text-inline-images h2,.konoha-statement .nectar-text-inline-images h2 *{color:#16261C !important;}
/* Off-canvas menu: Forest panel, Paper links, Lime active */
#slide-out-widget-area-bg{background-color:#16261C !important;}
#slide-out-widget-area a{color:#F5F3EC !important;}
#slide-out-widget-area a:hover,#slide-out-widget-area a:focus,#slide-out-widget-area .current-menu-item > a{color:#C5F24D !important;}
#slide-out-widget-area a:after,#slide-out-widget-area a:before{background-color:#C5F24D !important;}
/* Menu font and active state */
#slide-out-widget-area a,#slide-out-widget-area a *{font-family:"Manrope",system-ui,sans-serif !important;font-weight:700;}
#slide-out-widget-area a:hover,#slide-out-widget-area a:hover *,#slide-out-widget-area a:focus *,#slide-out-widget-area .current-menu-item > a *{color:#C5F24D !important;border-color:#C5F24D !important;}
/* Footer on Forest */
.konoha-footer p,.konoha-footer .nectar-responsive-text,.konoha-footer .nectar-responsive-text *{color:#F5F3EC !important;}
.konoha-footer .nectar-cta,.konoha-footer .nectar-cta *{color:#C5F24D !important;}
.konoha-footer .nectar-split-heading,.konoha-footer .nectar-split-heading *{color:#C5F24D !important;}
#contact .wpcf7 label{color:#F5F3EC !important;}
#contact .wpcf7 input:not([type=submit]),#contact .wpcf7 select,#contact .wpcf7 textarea{border-color:#C5F24D !important;}
#contact .wpcf7 input[type=submit]{background:#C5F24D !important;color:#16261C !important;}
/* Logo: K mark + Manrope wordmark */
#header-outer #logo{font-weight:800 !important;letter-spacing:-0.01em;display:inline-flex !important;align-items:center;}
#header-outer #logo::before{content:"";display:inline-block;width:30px;height:30px;flex:0 0 30px;margin-right:10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M44,0 L92,0 A8,8 0 0 1 100,8 L100,56 A44,44 0 0 1 56,100 L8,100 A8,8 0 0 1 0,92 L0,44 A44,44 0 0 1 44,0 Z' fill='%2316261C'/%3E%3Cpath d='M25,22 L39,22 L39,44.5 L57.5,22 L74,22 L51.5,49.3 L75,78 L57.5,78 L39,55.5 L39,78 L25,78 Z' fill='%23C5F24D'/%3E%3C/svg%3E") center/contain no-repeat;}
/* Menu weight and hover v2 */
html body #slide-out-widget-area ul li a,html body #slide-out-widget-area ul li a *{font-weight:700 !important;}
html body #slide-out-widget-area ul li a:hover,html body #slide-out-widget-area ul li a:hover *,html body #slide-out-widget-area ul li.current-menu-item > a,html body #slide-out-widget-area ul li.current-menu-item > a *{color:#C5F24D !important;}
html body #slide-out-widget-area ul li a:after,html body #slide-out-widget-area ul li a:before,html body #slide-out-widget-area ul li a span:after,html body #slide-out-widget-area ul li a span:before{background-color:#C5F24D !important;border-color:#C5F24D !important;}
/* Header CTA pill v2: lime outline, visible on Forest */
html body #header-outer li[class*="menu-item-btn-style"] > a{color:#F5F3EC !important;}
html body #header-outer li[class*="menu-item-btn-style"] > a .menu-title-text{color:inherit !important;}
html body #header-outer li[class*="menu-item-btn-style"] > a:before{background-color:transparent !important;border:1.5px solid #C5F24D !important;opacity:1 !important;}
html body #header-outer li[class*="menu-item-btn-style"] > a:after{opacity:0 !important;}
/* Off-canvas menu v3: Paper panel, Forest links */
#slide-out-widget-area-bg{background-color:#F5F3EC !important;}
html body #slide-out-widget-area ul li a,html body #slide-out-widget-area ul li a *,html body #slide-out-widget-area ul li a:hover,html body #slide-out-widget-area ul li a:hover *,html body #slide-out-widget-area ul li.current-menu-item > a,html body #slide-out-widget-area ul li.current-menu-item > a *{color:#16261C !important;}
html body #slide-out-widget-area ul li a:after,html body #slide-out-widget-area ul li a:before,html body #slide-out-widget-area ul li a span:after,html body #slide-out-widget-area ul li a span:before{background-color:#16261C !important;border-color:#16261C !important;}
/* Active menu item fix */
html body #slide-out-widget-area#slide-out-widget-area ul li.current-menu-item.current-menu-item > a,html body #slide-out-widget-area#slide-out-widget-area ul li.current-menu-item.current-menu-item > a *,html body #slide-out-widget-area#slide-out-widget-area ul li a.menu-item-link,html body #slide-out-widget-area#slide-out-widget-area ul li > a{color:#16261C !important;-webkit-text-fill-color:#16261C !important;}
/* Start home on Forest so there is no cream flash before the colour-change script runs */
body.home{background-color:#16261C;}
/* Header CTA filled once scrolled */
html body #header-outer#header-outer.detached li[class*="menu-item-btn-style"] > a:before{background-color:#C5F24D !important;border-color:#C5F24D !important;opacity:1 !important;}
html body #header-outer#header-outer.detached li[class*="menu-item-btn-style"] > a,html body #header-outer#header-outer.detached li[class*="menu-item-btn-style"] > a .menu-title-text{color:#16261C !important;-webkit-text-fill-color:#16261C !important;}
/* Quote form layout */
#contact .konoha-form .kf-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
#contact .konoha-form .kf-grid > p,#contact .konoha-form .kf-services > p{display:contents;}
#contact .konoha-form .kf-grid br,#contact .konoha-form .kf-services br{display:none;}
@media (max-width:690px){#contact .konoha-form .kf-grid,#contact .konoha-form .kf-services .wpcf7-checkbox{grid-template-columns:1fr !important;}}
html body #contact .konoha-form input:not([type=submit]):not([type=checkbox]),html body #contact .konoha-form textarea{background:transparent !important;border:1.5px solid rgba(245,243,236,.55) !important;border-radius:8px !important;color:#F5F3EC !important;padding:16px 18px !important;font-size:17px !important;}
html body #contact .konoha-form input::placeholder,html body #contact .konoha-form textarea::placeholder{color:rgba(245,243,236,.6) !important;}
html body #contact .konoha-form input:not([type=submit]):focus,html body #contact .konoha-form textarea:focus{border-color:#C5F24D !important;outline:none;}
#contact .konoha-form .kf-label{color:#F5F3EC;font-family:"Manrope",sans-serif;font-weight:700;font-size:16px;margin:32px 0 14px;padding:0;}
#contact .konoha-form .kf-services .wpcf7-checkbox{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;}
#contact .konoha-form .wpcf7-list-item{margin:0 !important;display:block;}
html body #contact .konoha-form .wpcf7-list-item label{display:flex;align-items:center;gap:12px;color:#F5F3EC !important;cursor:pointer;font-size:16px;font-weight:400;}
html body #contact .konoha-form input[type=checkbox]{appearance:none;-webkit-appearance:none;width:22px;height:22px;flex:0 0 22px;border:1.5px solid rgba(245,243,236,.7);border-radius:3px;background:transparent;margin:0;cursor:pointer;}
html body #contact .konoha-form input[type=checkbox]:checked{background:#C5F24D url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12l5 5L19 7' fill='none' stroke='%2316261C' stroke-width='3'/%3E%3C/svg%3E") center/14px no-repeat;border-color:#C5F24D;}
html body #contact .konoha-form textarea{margin-top:28px !important;height:120px !important;}
html body #contact .konoha-form input[type=submit]{width:100% !important;margin-top:28px !important;background:#C5F24D !important;color:#16261C !important;border-radius:999px !important;padding:20px !important;font-family:"Manrope",sans-serif !important;font-weight:700 !important;font-size:17px !important;}
/* Checkbox fix */
html body #contact .konoha-form input[type=checkbox]{width:22px !important;height:22px !important;min-height:0 !important;padding:0 !important;background-color:transparent !important;border:1.5px solid rgba(245,243,236,.7) !important;border-radius:3px !important;box-shadow:none !important;}
html body #contact .konoha-form input[type=checkbox]:checked{background:#C5F24D url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12l5 5L19 7' fill='none' stroke='%2316261C' stroke-width='3'/%3E%3C/svg%3E") center/14px no-repeat !important;border-color:#C5F24D !important;}
html body #contact .konoha-form .wpcf7-list-item-label{color:#F5F3EC !important;font-size:16px;}
/* Hide the Yoast breadcrumb bar that overlaps the header (breadcrumb schema still outputs) */
#breadcrumbs.yoast,p#breadcrumbs{display:none !important;}
/* Header blur when scrolled, so page text never shows through the logo */
html body #header-outer.detached::before{content:"";position:absolute;inset:0;z-index:-1;-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2);pointer-events:none;}
/* Mobile header and hero */
@media (max-width:690px){
 html body #header-outer #logo{font-size:15px !important;letter-spacing:0;}
 html body #header-outer #logo::before{width:24px;height:24px;flex:0 0 24px;margin-right:8px;}
 html body #header-outer li[class*="menu-item-btn-style"] > a{font-size:12px !important;padding-left:12px !important;padding-right:12px !important;}
 html body .konoha-hero .nectar-split-heading,html body .konoha-hero .nectar-split-heading h1{font-size:23vw !important;line-height:0.88 !important;letter-spacing:-0.045em !important;}
 html body .konoha-hero .nectar-split-heading *{letter-spacing:-0.045em !important;}
}
@media (max-width:370px){
 html body #header-outer #logo{font-size:12px !important;}
 html body #header-outer #logo::before{width:22px;height:22px;flex:0 0 22px;margin-right:6px;}
 html body #header-outer li[class*="menu-item-btn-style"] > a{font-size:11px !important;padding-left:10px !important;padding-right:10px !important;}
 html body .konoha-hero .nectar-split-heading,html body .konoha-hero .nectar-split-heading h1{font-size:21.5vw !important;}
}
/* Optical centre: hang the full stop on BRAND. so the letters sit dead centre */
.konoha-hero .nectar-split-heading ~ .nectar-split-heading h1{position:relative;left:0.12em;}
/* See the work photo: keep the model's head in frame */
html body .konoha-work-photo .row-bg{background-position:center 30% !important;}
