/*
 Theme Name:     Cohere 2026 (Divi Child Theme)
 Theme URI:
 Description:    Custom Cohere 2026 Theme, built with Divi 5
 Author:         Kevin Udy
 Author URI:     https://kevinudy.com
 Template:       Divi
 Version:        1.3.0
*/

/* =========================================================================
   Cohere 2026
   Colors/fonts/buttons live in Divi (global colors + button presets).
   This file covers layout and the pieces Divi can't express.
   Classes are prefixed c26- and set on sections/rows/columns/modules
   under Advanced > Attributes > CSS Class.
   ========================================================================= */

:root{--ink:#123a3e;--deep:#1f5257;--teal:#2b6e74;--blush:#e9a79e;--blush-soft:#fbeeeb;--apricot:#eaa77c;--aqua:#56c7d1;--aqua-soft:#dff3f5;--paper:#fbf8f5;--line:#e3eaea;--c26-wrap:1240px;--c26-gutter:32px}

body{-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{color:var(--ink);font-weight:800;letter-spacing:-.02em}

/* ---------- Shared layout helpers ---------- */
.c26-nav .et_pb_row{box-sizing:border-box;width:100%;max-width:var(--c26-wrap);padding:0 var(--c26-gutter);margin:0 auto}
/* Section padding, row width/gutters and grid/flex layouts are Divi settings (Cohere Section / Cohere Row presets, row Layout). */
.c26 .et_pb_row,.c26-footer .et_pb_row,.c26-bleed .et_pb_row{box-sizing:border-box}
/* Divi quirk: the Theme Builder body layout's block-display row leaks its legacy 5.5% column gutter into grid rows inside it */
body .et_grid_row>.et_pb_column.et_pb_column{margin-right:0}
/* Divi quirk: plain blog posts don't load Divi's grid base CSS, though the Theme Builder layouts on them use grid rows */
.et_grid_column,.et_grid_group,.et_grid_module,.et_grid_row,.et_grid_section{display:grid;column-gap:var(--horizontal-gap);row-gap:var(--vertical-gap)}
.c26 .et_pb_column,.c26-footer .et_pb_column{margin-bottom:0}
.c26 .et_pb_module,.c26-footer .et_pb_module{margin-bottom:0}

/* Type */
.c26{color:var(--ink)}
.c26 .et_pb_text{font-size:18px;line-height:1.6;color:var(--ink)}
.c26 .et_pb_text p{padding-bottom:0}
.c26 .et_pb_text h1,.c26 .et_pb_text h2,.c26 .et_pb_text h3,.c26 .et_pb_text h4{padding-bottom:0;line-height:1.05;letter-spacing:-.025em;text-wrap:balance}
.c26 .et_pb_text p{text-wrap:pretty}
.c26 .et_pb_text a{color:var(--teal);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.c26 .et_pb_text a:hover{color:var(--ink)}
.c26 h1 em,.c26 h2 em{font-style:normal}
.c26-eyebrow{font-size:13px!important;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1.2!important;display:flex;align-items:center;gap:10px;color:var(--teal)}
.c26-eyebrow::before{content:"";width:28px;height:2px;background:currentColor;flex:none}

/* Buttons: colors/borders come from the Divi button presets; this keeps the pill geometry */
.c26 .et_pb_button_module_wrapper,.c26-footer .et_pb_button_module_wrapper{margin-bottom:0}
/* Same selector weight as Divi's preset CSS so the pill geometry wins */
body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button,body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button:hover{display:inline-flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;gap:10px;min-height:52px;padding:0 26px!important;line-height:1!important;white-space:nowrap;transition:transform .15s,background-color .15s,color .15s,border-color .15s}
body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button:hover{transform:translateY(-2px)}
body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button.c26-arrow::after,body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button.c26-arrow:hover::after{content:"\2192"!important;font-family:inherit!important;font-weight:500!important;font-size:1em!important;line-height:1!important;position:static!important;display:inline-block!important;margin:0!important;opacity:1!important;transform:none!important;top:auto!important}

/* Images */
.c26 .et_pb_image{width:100%;max-width:none}
.c26-fig .et_pb_image_wrap{display:block;width:100%;overflow:hidden} /* corner radius: the image's Border setting */
.c26-fig img{display:block;width:100%;height:100%;object-fit:cover}
/* Shapes (aspect ratio / height) are the image's Divi Sizing settings; c26-fill crops the photo to fill them */

/* Section heading row (title left, intro/button right) */
.c26-sec-head h2{margin-top:16px;max-width:680px}
.c26-sec-head .et_pb_text p:not(.c26-eyebrow){max-width:420px}

/* ---------- Header (Theme Builder) ---------- */
/* Sticky: the header section's Divi Sticky setting (Scroll Effects) */
/* Divi quirk: its sticky script isn't loaded on plain blog posts/archives, so fall back to CSS sticky there */
body:not(.et_pb_pagebuilder_layout) .et-l--header{position:sticky;top:0;z-index:1000}
body.admin-bar:not(.et_pb_pagebuilder_layout) .et-l--header{top:32px}
@media (max-width:782px){body.admin-bar:not(.et_pb_pagebuilder_layout) .et-l--header{top:46px}}
@media (max-width:600px){body.admin-bar:not(.et_pb_pagebuilder_layout) .et-l--header{top:0}}
.c26-nav.et_pb_section{padding:0;background:rgba(251,248,245,.92)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.c26-nav .et_pb_menu{background:transparent!important}
.c26-nav .et_pb_menu_inner_container{display:flex!important;flex-direction:row!important;align-items:center;min-height:96px}
/* Posts load a different Divi CSS bundle (no builder on the post itself), so spell out the header layout */
.c26-nav .et_pb_menu__wrap{display:flex}
.c26-nav .et_pb_menu__menu,.c26-nav .et_pb_menu__menu>nav{display:flex;align-items:center}
.c26-nav .et_mobile_nav_menu{display:none}
.et-l--header .c26-nav ul,.et-l--footer .c26-footer ul{list-style:none!important;padding:0!important;line-height:inherit}
.c26-nav .et_pb_menu__logo-wrap{flex:none;margin:0 32px 0 0}
.c26-nav .et_pb_menu__logo{margin:0}
.c26-nav .et_pb_menu__logo img{height:64px;width:auto;max-height:none}
.c26-nav .et_pb_menu{width:100%}
.c26-nav .et_pb_menu.et_flex_module .et_pb_menu__wrap{flex:1 1 auto;justify-content:flex-end;margin:0}
.c26-nav .et_pb_menu .et_pb_menu__menu>nav>ul{justify-content:flex-end}
.c26-nav .et_pb_menu__menu>nav>ul{display:flex;align-items:center;gap:28px;flex-wrap:nowrap}
.c26-nav .et-menu>li{padding:0!important;margin:0}
.c26-nav .et-menu>li>a{color:var(--ink)!important;font-family:"Figtree",sans-serif;font-weight:600;font-size:15px;line-height:1.2;padding:0!important;opacity:1!important}
.c26-nav .et-menu>li>a:hover{color:var(--teal)!important;text-decoration:underline;text-underline-offset:3px}
.c26-nav .et-menu>li.button>a{display:inline-flex;align-items:center;min-height:44px;padding:0 20px!important;border:2px solid var(--ink);border-radius:999px;text-decoration:none!important;transition:transform .15s,background-color .15s,color .15s}
.c26-nav .et-menu>li.button>a:hover{transform:translateY(-2px)}
.c26-nav .et-menu>li.book_tour>a:hover{background:var(--ink);color:#fff!important}
.c26-nav .et-menu>li.book_meeting>a{background:var(--ink);color:#fff!important}
.c26-nav .et-menu>li.book_meeting>a:hover{background:var(--deep);border-color:var(--deep)}
.c26-nav .et-menu>li.current-menu-item>a{color:var(--teal)!important}
/* Current page: a clear underline, not just the teal colour (Divi's Menu module has no underline setting).
   Blog posts/archives mark "Guide" (menu item CSS class nav-guide, set in Appearance > Menus). */
body.single-post .c26-nav .et-menu>li.nav-guide>a,body.archive .c26-nav .et-menu>li.nav-guide>a,body.author .c26-nav .et-menu>li.nav-guide>a{color:var(--teal)!important}
body.single-post .c26-nav .et-menu>li.nav-guide>a,body.archive .c26-nav .et-menu>li.nav-guide>a,body.author .c26-nav .et-menu>li.nav-guide>a,.c26-nav .et-menu>li.current-menu-item:not(.button)>a,.c26-nav .et-menu>li.current-menu-ancestor:not(.button)>a,.c26-nav .et_mobile_menu li.current-menu-item:not(.button)>a{text-decoration:underline!important;text-decoration-color:currentColor!important;text-decoration-thickness:2px!important;text-underline-offset:8px!important}
.c26-nav .et_mobile_nav_menu .mobile_menu_bar::before{color:var(--ink)}
.c26-nav .et_mobile_menu{border-top-color:var(--teal);background:#fff!important}
.c26-nav .et_mobile_menu li a{color:var(--ink)!important;font-weight:600}
.c26-nav .et_mobile_menu li.button a{font-weight:700}

/* ---------- Hero ---------- */
.c26-hero.et_pb_section{overflow:hidden}
.c26-hero .c26-eyebrow{color:var(--blush)}
.c26-hero h1{margin:24px 0;max-width:14.5ch}
.c26-hero h1 em{color:var(--blush)}
.c26-hero .c26-hero-lead{max-width:520px}
.c26-hero .et_pb_button_module_wrapper{margin-top:36px!important;margin-bottom:0!important}
/* Quick facts: a nested row (Hero: Quick Facts) of three text modules; layout and top rule are Divi settings */
.c26-fact strong{display:block;color:#fff;font-size:17px}
.c26-hero-art .c26-badge.et_pb_text{flex:none!important} /* position: the badge's Divi Position settings */
.c26-hero-badge{background:var(--blush);color:var(--ink);border-radius:16px;padding:16px 20px;font-weight:700;font-size:15px;line-height:1.3;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.c26-hero-badge span{display:block;font-size:28px;font-weight:800}

/* ---------- Path cards ---------- */
.c26-card .et_pb_button_module_wrapper{align-self:flex-start}
.c26-tag{font-size:13px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}
.c26-card h3{margin-top:18px}
.c26 ul.c26-checks{list-style:none!important;padding:0!important;margin:18px 0 0;display:grid;gap:10px;font-size:16px;color:#2c4e51}
.c26 ul.c26-checks li{display:flex;gap:12px;padding:0;line-height:1.5}
.c26 ul.c26-checks li::before{content:"";flex:none;width:8px;height:8px;margin-top:8px;border-radius:50%;background:var(--blush)}
.c26-price{margin-top:18px!important;font-size:15px!important;color:#35585b}
.c26-price b{font-size:22px;color:var(--ink)}
.c26-card--featured .c26-tag{color:var(--blush)}
.c26-card--featured ul.c26-checks{color:#dcebeb}

/* ---------- Full-bleed photos ---------- */
/* Height, bottom alignment and the dark gradient are the section's Divi settings */
.c26-bleed-cap{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding-bottom:48px;color:#fff}
.c26-bleed-cap p{font-size:clamp(26px,3vw,40px);font-weight:800;line-height:1.1;letter-spacing:-.02em;max-width:640px;padding:0!important;color:#fff}
.c26-bleed-cap span{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blush)}

/* ---------- Features ---------- */
.c26-feature h2{margin:16px 0 20px}
.c26-feature .et_pb_text:not(.c26-map):not(.c26-form):not(.c26-contact-details)>.et_pb_text_inner>p:not(.c26-eyebrow):not(.c26-tag){margin-bottom:28px;max-width:480px}
/* Spec grid: a nested row (Spec Grid) of 2x2 cells; grid, lines and cell padding are Divi settings */
.c26 .c26-spec-cell.et_pb_text{font-size:15px;font-weight:600;line-height:1.35;color:var(--ink)}
.c26 .c26-spec-cell p{margin:0!important;color:inherit!important;max-width:none!important}
.c26-spec-cell small{display:block;font-weight:500;color:#4f7275;font-size:13px;margin-bottom:2px}
.c26 .c26-inline-link.et_pb_text{width:auto;margin:0 0 0 6px!important}

/* ---------- Community ---------- */
.c26-social h2{margin:16px 0 24px}
.c26-social h2 em{color:#b0554a}
.c26-social .c26-lead{font-size:21px;margin-bottom:32px;max-width:540px}
.c26-pills{display:flex;flex-wrap:wrap;gap:10px}
.c26-pills span{background:#fff;border:1px solid #f0d6d1;border-radius:999px;padding:10px 18px;font-size:15px;font-weight:600;line-height:1.3}

/* ---------- Events ---------- */
.c26 ul.c26-event-list{list-style:none!important;padding:0!important;margin:0;border-top:2px solid var(--ink)}
.c26-event{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:32px;align-items:center;padding:24px 8px!important;border-bottom:1px solid var(--line);transition:background .15s}
.c26-event:hover{background:#fff}
.c26-date{text-align:center;line-height:1}
.c26-date b{display:block;font-size:40px;font-weight:800;letter-spacing:-.03em;color:var(--ink)}
.c26-date span{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--teal)}
.c26-event h3{font-size:24px;font-weight:700;letter-spacing:-.01em;line-height:1.2;padding:0;margin:0;color:var(--ink)}
.c26-event p{font-size:15px;color:#4f7275;margin:4px 0 0;padding:0}
.c26 a.c26-more{font-weight:700;font-size:15px;color:var(--ink);text-decoration:none;display:flex;gap:8px;align-items:center;min-height:44px}
.c26 a.c26-more::after{content:"→";font-weight:500}
.c26 a.c26-more:hover{color:var(--teal)}
.c26-events-note{font-size:16px;color:#4f7275}

/* ---------- CTA ---------- */
.c26-cta h2{max-width:720px}
.c26-cta h2 em{color:var(--blush)}
.c26-cta-btns .et_pb_button_module_wrapper{margin-bottom:0!important}

/* ---------- Footer (Theme Builder) ---------- */
.c26-footer .et_pb_text p{padding-bottom:0}
.c26-footer .c26-foot-logo{display:block;height:84px;width:auto;margin-bottom:16px}
.c26-footer h4{font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;padding:0}
.c26-footer ul{list-style:none!important;padding:0!important;display:grid;gap:8px}
.c26-footer .et_pb_text a{text-decoration:none}
.c26-footer .et_pb_text a:hover{color:#fff!important;text-decoration:underline}
.c26-foot-base .et_pb_text{font-size:13px}

/* ---------- Subpage header (slim hero) ---------- */
.c26-pagehead .c26-eyebrow{color:var(--blush)}
.c26-pagehead h1{margin:18px 0 0;max-width:22ch}
.c26-pagehead .c26-lead{max-width:680px;margin-top:18px}
.c26-pagehead .et_pb_text a:hover{color:var(--blush)}
.c26-pagehead .et_pb_button_module_wrapper{margin-top:28px!important}

/* Events list used outside the homepage (code module carries the c26 class) */
.c26-events-module{width:100%}

/* ---------- Subpage pieces ---------- */
/* Numbered steps */
.c26-steps-sec h2{margin-top:16px;max-width:720px}
/* Steps: a nested row (Steps) of card columns; cards and grid are Divi settings. Numbers count automatically, so steps can be reordered or added */
.c26-steps-grid{counter-reset:c26step}
.c26-steps-grid>*{counter-increment:c26step}
.c26-step .et_pb_text_inner::before{content:counter(c26step);display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--blush);color:var(--ink);font-weight:800;font-size:20px;margin-bottom:18px}
.c26 .c26-step.et_pb_text p{font-size:19px;font-weight:700;line-height:1.35;color:var(--ink)}
/* Photo mosaic: layout is Divi's grid (column Layout + image Sizing spans); this only crops photos to fill their cells */
.c26-fill.et_pb_image{width:100%!important;min-height:0;overflow:hidden} /* min-height:0 so a tall photo can't stretch an aspect-ratio box */
.c26-mosaic>.c26-fill.et_pb_image{height:100%}
.c26-fill>a{display:block;height:100%}
.c26-fill .et_pb_image_wrap{height:100%}
/* Cohere Image presets (Card Photo, Card Photo (wide), Gallery Tile, Tall, Square): the photo crops to fill the
   preset's shape, so an image added in the builder needs only the preset, no class. IDs: build/ids.json img-*. */
:is(.preset--module--divi-image--27a59a1b-8fcb-441e-854b-104988d8facd,.preset--module--divi-image--acf94030-f3c7-451f-9d88-ef75a757fe05,.preset--module--divi-image--4ab6d028-79f1-4198-aa4b-313d0dd27fef,.preset--module--divi-image--df145de6-b381-4fa4-b08b-fcf76c55d898,.preset--module--divi-image--e174115b-0d86-44fd-a303-da133164fea0){width:100%!important;max-width:none;min-height:0;overflow:hidden}
:is(.preset--module--divi-image--27a59a1b-8fcb-441e-854b-104988d8facd,.preset--module--divi-image--acf94030-f3c7-451f-9d88-ef75a757fe05,.preset--module--divi-image--4ab6d028-79f1-4198-aa4b-313d0dd27fef,.preset--module--divi-image--df145de6-b381-4fa4-b08b-fcf76c55d898,.preset--module--divi-image--e174115b-0d86-44fd-a303-da133164fea0)>a{display:block;height:100%}
:is(.preset--module--divi-image--27a59a1b-8fcb-441e-854b-104988d8facd,.preset--module--divi-image--acf94030-f3c7-451f-9d88-ef75a757fe05,.preset--module--divi-image--4ab6d028-79f1-4198-aa4b-313d0dd27fef,.preset--module--divi-image--df145de6-b381-4fa4-b08b-fcf76c55d898,.preset--module--divi-image--e174115b-0d86-44fd-a303-da133164fea0) .et_pb_image_wrap{display:block;width:100%;height:100%;overflow:hidden}
:is(.preset--module--divi-image--27a59a1b-8fcb-441e-854b-104988d8facd,.preset--module--divi-image--acf94030-f3c7-451f-9d88-ef75a757fe05,.preset--module--divi-image--4ab6d028-79f1-4198-aa4b-313d0dd27fef,.preset--module--divi-image--df145de6-b381-4fa4-b08b-fcf76c55d898,.preset--module--divi-image--e174115b-0d86-44fd-a303-da133164fea0) img{display:block;width:100%;height:100%;object-fit:cover}
.c26-mosaic>.preset--module--divi-image--4ab6d028-79f1-4198-aa4b-313d0dd27fef{height:100%}
/* Embedded Google map (About) */
.c26-map iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:20px}
/* Ghost-light button inside the global CTA (Divi skips that preset's CSS inside global layouts) */
body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button.c26-ghost-light{background:transparent!important;border:2px solid rgba(255,255,255,.55)!important;color:#fff!important}
body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button.c26-ghost-light:hover{background:#fff!important;border-color:#fff!important;color:var(--ink)!important}

/* =========================================================================
   Site-wide styles for pages not yet rebuilt (subpages, blog posts).
   Low specificity on purpose: the homepage's .c26 rules win where both apply.
   ========================================================================= */
/* Page background colour: Appearance > Customize > General Settings > Background */
#page-container{background:transparent}
#main-content{background:transparent}
body{color:var(--ink)}

/* Type */
.et_pb_text:not(.c26 *):not(.c26-footer *),.single #left-area,.entry-content{font-size:17px;line-height:1.65;color:var(--ink)}
.et_pb_text:not(.c26 *):not(.c26-footer *) h1,.single h1.entry-title{font-size:clamp(32px,3.6vw,46px);line-height:1.08;letter-spacing:-.025em;font-weight:800;color:var(--ink);text-wrap:balance}
.et_pb_text:not(.c26 *):not(.c26-footer *) h2,.entry-content h2{font-size:clamp(28px,3vw,38px);line-height:1.12;letter-spacing:-.02em;font-weight:800;color:var(--ink);text-wrap:balance}
.et_pb_text:not(.c26 *):not(.c26-footer *) h3,.entry-content h3{font-size:clamp(22px,2.2vw,26px);line-height:1.2;letter-spacing:-.015em;font-weight:700;color:var(--ink)}
.et_pb_text:not(.c26 *):not(.c26-footer *) h4,.entry-content h4{font-size:19px;line-height:1.3;font-weight:700;color:var(--ink)}

/* Links: teal underline (overrides the 2018 aqua/peach link colors) */
.et_pb_text:not(.c26 *):not(.c26-footer *) a,.entry-content a,.et_pb_text:not(.c26 *):not(.c26-footer *) a:visited{color:var(--teal);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.et_pb_text:not(.c26 *):not(.c26-footer *) a:hover,.entry-content a:hover{color:var(--ink)}

/* Plain bullet lists get the homepage's blush dots */
.et_pb_text:not(.c26 *):not(.c26-footer *) ul:not([class]),.entry-content ul:not([class]){list-style:none!important;padding:0 0 1em!important}
.et_pb_text:not(.c26 *):not(.c26-footer *) ul:not([class])>li,.entry-content ul:not([class])>li{position:relative;padding-left:20px;margin-bottom:6px}
.et_pb_text:not(.c26 *):not(.c26-footer *) ul:not([class])>li::before,.entry-content ul:not([class])>li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--blush)}

/* Buttons everywhere: pill geometry for the Divi presets (colors come from the presets) */
body #page-container .et_pb_section .et_pb_button.et_pb_button,
body #page-container .et_pb_section .et_pb_button.et_pb_button:hover{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:10px;min-height:52px;padding:0 26px!important;line-height:1!important;transition:transform .15s,background-color .15s,color .15s,border-color .15s}
body #page-container .et_pb_section .et_pb_button.et_pb_button:hover{transform:translateY(-2px)}
/* Buttons are never underlined (the Visual Builder canvas lacks #page-container, so the rules above don't reach it) */
.et_pb_button,.et_pb_button:hover{text-decoration:none!important}

/* Gravity Forms */
.gform_wrapper input[type=text],.gform_wrapper input[type=email],.gform_wrapper input[type=tel],.gform_wrapper input[type=url],.gform_wrapper input[type=number],.gform_wrapper select,.gform_wrapper textarea{border:1px solid var(--line)!important;border-radius:12px!important;background:#fff!important;padding:12px 14px!important;font-size:16px!important;color:var(--ink)!important}
.gform_wrapper input:focus,.gform_wrapper textarea:focus,.gform_wrapper select:focus{outline:2px solid var(--teal)!important;outline-offset:1px;border-color:var(--teal)!important}
.gform_wrapper .gfield_label,.gform_wrapper legend.gfield_label{color:var(--ink);font-weight:700}
.gform_wrapper .gform_button,.gform_wrapper input[type=submit],.gform_button{display:inline-flex;align-items:center;min-height:52px;padding:0 26px!important;border:2px solid var(--blush)!important;border-radius:999px!important;background:var(--blush)!important;color:var(--ink)!important;font:700 16px/1 "Figtree",sans-serif!important;text-transform:none!important;cursor:pointer;transition:transform .15s,background-color .15s}
.gform_wrapper .gform_button:hover,.gform_button:hover{background:#f2bcb4!important;border-color:#f2bcb4!important;color:var(--ink)!important;transform:translateY(-2px)}

/* Blog index (Divi Blog module) */
.et_pb_blog_grid .et_pb_post,.c26-blog-grid .et_pb_post{border:1px solid var(--line)!important;border-radius:20px!important;overflow:hidden;background:#fff}
.et_pb_blog_grid .et_pb_post .entry-title a,.et_pb_blog_grid .et_pb_post .entry-title,.c26-blog-grid .et_pb_post .entry-title a{color:var(--ink)!important;font-weight:800;letter-spacing:-.01em}
.et_pb_blog_grid .et_pb_post .more-link,.c26-blog-grid .et_pb_post .more-link{color:var(--teal);font-weight:700}

/* ---------- Blog posts (All Posts Theme Builder body layout) ---------- */
.c26-posthead .c26-eyebrow a{color:var(--blush)!important;text-decoration:none!important}
.c26-posthead .et_pb_post_title{margin-top:18px!important}
.c26-posthead .et_pb_post_title .entry-title,.c26-posthead .et_pb_post_title h1{letter-spacing:-.025em;padding:0;text-wrap:balance}
.c26-posthead .et_pb_title_meta_container{margin-top:16px}
.c26-posthead .et_pb_title_meta_container a{color:#fff!important;text-decoration:none}
.c26-post .et_pb_post_content{font-size:18px;line-height:1.75;color:#24484b}
.c26-post .et_pb_post_content p{padding-bottom:1.15em}
.c26-post .et_pb_post_content h2{font-size:clamp(26px,2.6vw,32px);line-height:1.15;margin:1.6em 0 .5em;padding:0;color:var(--ink)}
.c26-post .et_pb_post_content h3{font-size:23px;line-height:1.25;margin:1.4em 0 .4em;padding:0;color:var(--ink)}
.c26-post .et_pb_post_content h4{font-size:19px;margin:1.2em 0 .4em;padding:0;color:var(--ink)}
.c26-post .et_pb_post_content a{color:var(--teal);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.c26-post .et_pb_post_content a:hover{color:var(--ink)}
.c26-post .et_pb_post_content img{border-radius:16px;height:auto}
.c26-post .et_pb_post_content ul:not([class]){list-style:none!important;padding:0 0 1.15em!important}
.c26-post .et_pb_post_content ul:not([class])>li{position:relative;padding-left:22px;margin-bottom:8px}
.c26-post .et_pb_post_content ul:not([class])>li::before{content:"";position:absolute;left:0;top:.68em;width:8px;height:8px;border-radius:50%;background:var(--blush)}
.c26-post .et_pb_post_content ol{padding:0 0 1.15em 1.3em}
.c26-post .et_pb_post_content blockquote{border-left:3px solid var(--blush);margin:1.5em 0;padding:4px 0 4px 22px;font-size:21px;line-height:1.5;color:var(--ink)}
.c26-author{display:flex;gap:20px;align-items:flex-start;margin-top:48px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:20px}
.c26-author-mark{flex:none;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--blush);color:var(--ink);font-weight:800;font-size:19px}
.c26 .c26-author p{padding:0;font-size:16px;line-height:1.55}
.c26 .c26-author .c26-author-label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.c26 .c26-author .c26-author-name{font-size:20px;font-weight:800;color:var(--ink);margin-top:2px}
.c26 .c26-author .c26-author-bio{margin-top:8px;color:#35585b}
.c26 .c26-author .c26-author-more{margin-top:10px;font-size:15px;font-weight:700}
.c26-author-photo{flex:none;display:block;width:56px;height:56px;border-radius:50%;object-fit:cover}
/* Author page header: photo above the name, bio below it (Code modules; empty and hidden on other archives) */
.c26-author-slot:not(:has(.c26-author-part)){display:none}
.c26-author-photo--head,.c26-author-mark.c26-author-photo--head{width:96px;height:96px;box-shadow:0 0 0 4px rgba(255,255,255,.18)}
.c26-author-mark.c26-author-photo--head{font-size:32px}
.c26-author-slot:has(.c26-author-part)+.c26-post-title,.c26-author-slot:has(.c26-author-part)+.c26-post-title h1{margin-top:0}
.c26 .c26-author-bio--head a{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.c26 .c26-author-bio--head a:hover{color:var(--blush)}
.c26 .c26-author .c26-author-bio a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.c26 .c26-author-bio--head{max-width:720px;padding:0;font-size:19px;line-height:1.6;color:#e6f0f0}

/* Blog index: equal image heights, tidy cards */
.c26-blog-grid .et_pb_post{display:flex;flex-direction:column;padding:0 0 22px!important}
.c26-blog-grid .et_pb_image_container{margin:0 0 18px!important}
.c26-blog-grid .et_pb_image_container a,.c26-blog-grid .et_pb_image_container .entry-featured-image-url{display:block;margin:0!important}
.c26-blog-grid .et_pb_image_container img{display:block;width:100%;aspect-ratio:3/2;height:auto;object-fit:cover}
.c26-blog-grid .et_pb_post>*:not(.et_pb_image_container){padding-left:22px;padding-right:22px}
.c26-blog-grid .entry-title{font-size:21px!important;line-height:1.25!important;padding-bottom:6px}
.c26-blog-grid .et_pb_post>.entry-title:first-child{padding-top:24px} /* cards without a featured image */
.c26-blog-grid .post-meta{font-size:14px;color:#4f7275}
.c26-blog-grid .post-content{font-size:15px;line-height:1.6;color:#35585b}

/* Member Profiles (Cobot widget; its inline <style> is outranked with body #member-profiles-widget) */
body #member-profiles-widget{background:transparent;font-family:inherit;color:var(--ink);overflow:visible}
body #member-profiles-widget .profile-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;padding:0!important;list-style:none!important}
body #member-profiles-widget .profile-list>li.profile{margin:0;padding:0!important;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:none;transition:transform .2s,box-shadow .2s}
body #member-profiles-widget .profile-list>li.profile::before{display:none!important}
body #member-profiles-widget .profile:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(18,58,62,.08)}
body #member-profiles-widget .profile-body{padding:24px 24px 14px}
body #member-profiles-widget .profile-member-link{float:none;margin-bottom:14px;color:var(--ink)}
body #member-profiles-widget .avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;margin-right:16px}
body #member-profiles-widget .avatar-has-placeholder{background:var(--blush);background-image:none}
body #member-profiles-widget .profile-name{font-size:19px;font-weight:800;letter-spacing:-.01em;line-height:1.25;color:var(--ink);padding:0}
body #member-profiles-widget .profile-company{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);padding:0 0 4px}
body #member-profiles-widget .profile-description{font-size:15px;line-height:1.6;color:#35585b;margin-bottom:12px}
body #member-profiles-widget .profile-link{opacity:.6;padding:.5em .6em}
body #member-profiles-widget .profile-link:hover{opacity:1}
body #member-profiles-widget .profile-link svg path{fill:var(--teal)}
body #member-profiles-widget .pagination{margin:32px 0 0}
body #member-profiles-widget .pagination-button{width:2.4em;height:2.4em;font-size:15px;background:#fff;border:1px solid var(--line);color:var(--ink)}
body #member-profiles-widget .pagination-button[aria-current]{background:var(--ink);color:#fff;border-color:var(--ink)}

/* About intro, Contact */
.c26 .c26-big-copy.et_pb_text{font-size:21px;line-height:1.6;max-width:760px}
.c26 .c26-big-copy p+p{margin-top:18px}
.c26-about-intro .et_pb_group{margin-top:12px}
.c26 .c26-note{font-size:15px;line-height:1.6;color:#4f7275;margin-top:16px!important}
.c26-contact .c26-form{margin-top:8px}
.c26 .c26-contact-details .c26-tag{margin-top:22px!important}
.c26 .c26-contact-details .c26-tag:first-child{margin-top:0!important}
.c26 .c26-contact-details p:not(.c26-tag){margin-top:6px;font-size:17px}
.c26-contact-row{align-items:start!important}

/* 404: popular pages list */
.c26 ul.c26-linklist{list-style:none!important;padding:0!important;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.c26 ul.c26-linklist li{padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:16px;line-height:1.4}
.c26 ul.c26-linklist a{display:block;font-weight:800;font-size:19px;color:var(--ink);text-decoration:none}
.c26 ul.c26-linklist a:hover{color:var(--teal)}
.c26 ul.c26-linklist span{display:block;font-size:15px;color:#4f7275;margin-top:4px}
/* Blog grid pagination */
.c26-blog-grid .pagination{display:flex;justify-content:space-between;margin-top:40px;padding:0}
.c26-blog-grid .pagination a{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border:2px solid var(--ink);border-radius:999px;color:var(--ink);font-weight:700;font-size:15px;text-decoration:none}
.c26-blog-grid .pagination a:hover{background:var(--ink);color:#fff}

/* ---------- Tablet / phone ---------- */
@media (max-width:980px){
	.c26-event{grid-template-columns:72px minmax(0,1fr);gap:20px}
	.c26 a.c26-more{grid-column:2}
	.c26-nav .et_pb_menu_inner_container{min-height:80px}
	.c26-nav .et_pb_menu__menu{display:none!important}
	.c26-nav .et_mobile_nav_menu{display:flex!important;margin-left:auto}
	.c26-nav .et_pb_menu__wrap{justify-content:flex-end}
	.c26-nav .et_pb_menu__logo img{height:52px}
}
@media (max-width:600px){
	:root{--c26-gutter:20px}
	body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button,body #page-container .et_pb_section.c26 .et_pb_button.et_pb_button:hover{white-space:normal}
}

/* =========================================================================
   Legacy content (older blog posts and pages not rebuilt)
   The 2018 theme's other rules (old Divi header/footer, old Cobot widget, unused button classes) were removed 2026-10.
   ========================================================================= */
/* Divi's default white section background would show as white bands on the paper page background */
.et_pb_section{background-color:transparent}
/* Divi's sidebar divider line (no sidebars on this site) */
#main-content .container::before{display:none}
/* Mailchimp signup forms embedded in a few older posts */
#mc-embedded-subscribe-form .subscribe_email,#mc-embedded-subscribe-form input[type=email]{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px 14px;font-size:16px;color:var(--ink)}
#mc-embedded-subscribe-form .subscribe_button,#mc-embedded-subscribe-form input[type=submit]{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin-top:10px;padding:0 26px;border:2px solid var(--blush);border-radius:999px;background:var(--blush);color:var(--ink);font:700 16px/1 "Figtree",sans-serif;text-transform:none;cursor:pointer}
#mc-embedded-subscribe-form .subscribe_button:hover,#mc-embedded-subscribe-form input[type=submit]:hover{background:#f2bcb4;border-color:#f2bcb4}
/* Blog post header: featured image below the title (Post Title module setting). Natural size up to the column
   width and 560px tall, so portrait images and small old images aren't stretched or cropped. */
.c26-post-title .et_pb_title_featured_container{margin-top:32px}
.c26-post-title .et_pb_title_featured_container img{display:block;align-self:flex-start;width:auto;height:auto;max-width:100%;max-height:560px;object-fit:contain}
