@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');:root{--navy:#233b54;--blue:#769ab4;--pale:#e9f1f5;--cream:#fbfaf7;--gold:#b99d6c;--ink:#344759}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.75}a{color:inherit}header{background:#fffdf9ee;border-bottom:1px solid #e8e6df;position:sticky;top:0;z-index:5;backdrop-filter:blur(12px)}.bar{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 25px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none}.monogram{width:52px;height:52px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:25px 'Playfair Display',serif;color:var(--navy)}.brandname{font:20px 'Playfair Display',serif;color:var(--navy);line-height:1.25}.brandname small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:2.1px;text-transform:uppercase;margin-top:4px;color:#788c9b}.nav{display:flex;gap:19px;align-items:center;flex-wrap:wrap}.nav a{text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.3px}.nav a:hover,.nav a.active{color:#6389a4}.hero{background:radial-gradient(circle at 80% 30%,#e0ebf1 0,transparent 38%),linear-gradient(120deg,#fbfaf7,#edf4f7);min-height:590px;display:flex;align-items:center}.wrap{max-width:1120px;margin:auto;padding:85px 28px}.hero .wrap{width:100%;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:3px;color:#6d8fa8;font-size:12px;font-weight:700}h1,h2,h3{font-family:'Playfair Display',serif;color:var(--navy);font-weight:500;line-height:1.25}h1{font-size:clamp(42px,5vw,68px);margin:16px 0 24px}h2{font-size:clamp(30px,3.5vw,45px);margin:12px 0 24px}h3{font-size:26px;margin:10px 0}p{margin:0 0 18px}.lead{font-size:19px;line-height:1.8;max-width:690px}.button{display:inline-block;background:var(--navy);color:white;text-decoration:none;padding:13px 25px;border-radius:3px;font-weight:600;font-size:13px;letter-spacing:.5px;margin:12px 12px 0 0}.button.secondary{background:transparent;color:var(--navy);border:1px solid #a4b9c7}.art{height:420px;border:1px solid #b6c9d4;border-radius:220px 220px 12px 12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#e1ecf2,#fffdf8);position:relative;box-shadow:20px 20px 0 #dbe8ef}.art:before,.art:after{content:'❧';font-size:105px;color:#a5bac4;position:absolute;opacity:.65}.art:before{top:5px;left:14px;transform:rotate(-35deg)}.art:after{bottom:15px;right:10px;transform:rotate(145deg)}.bird{font-size:120px;filter:saturate(.65);line-height:1}.art span{position:absolute;bottom:85px;font:italic 20px 'Playfair Display',serif;color:#55758c}.section{padding:75px 0}.section.alt{background:#eef4f7}.center{text-align:center}.center .lead{margin:auto}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}.card{background:white;padding:35px 28px;border:1px solid #e3e8e8;box-shadow:0 8px 25px #233b5408}.card .mark{color:var(--gold);font-size:23px}.card p{font-size:14px}.banner{background:#29445e;color:#fff;text-align:center;padding:70px 25px}.banner h2{color:white}.banner p{max-width:650px;margin:0 auto 18px}.banner .button{background:white;color:#29445e}.pagehead{background:linear-gradient(115deg,#eaf2f6,#faf9f5);padding:75px 25px;text-align:center}.pagehead h1{font-size:clamp(39px,4vw,58px);margin:10px 0}.content{max-width:880px;margin:auto;padding:70px 25px}.content h2{margin-top:42px}.content h2:first-child{margin-top:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.feature{padding:22px 0;border-bottom:1px solid #dbe5e9}.feature:last-child{border-bottom:0}.price{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #e1e7e9;padding:21px 0;align-items:baseline}.price strong{font-family:'Playfair Display',serif;font-size:24px;color:var(--navy);white-space:nowrap}.note{background:#edf3f6;padding:27px;margin-top:35px;border-left:3px solid var(--gold)}.contactrow{display:flex;gap:20px;flex-wrap:wrap;margin:30px 0}.contactrow a{font-weight:600;color:#476d88}.steps{counter-reset:step}.step{display:flex;gap:22px;padding:25px 0;border-bottom:1px solid #e0e6e8}.step:before{counter-increment:step;content:counter(step);font:28px 'Playfair Display',serif;color:#8daabc;min-width:42px}.step h3{margin:0 0 8px}footer{background:#20394f;color:#e6eff4;padding:45px 25px;text-align:center}footer .brandname{color:white}footer p{font-size:13px}footer a{color:#dbe8ef}footer .links{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin:20px 0;font-size:13px}.small{font-size:13px;color:#617587}@media(max-width:900px){.bar{flex-direction:column}.nav{justify-content:center;gap:12px}.hero .wrap,.split{grid-template-columns:1fr}.art{height:290px;max-width:380px;margin:auto;width:100%}.cards{grid-template-columns:1fr 1fr}}@media(max-width:600px){.cards{grid-template-columns:1fr}.wrap{padding:58px 22px}.section{padding:30px 0}.nav a{font-size:11px}.brandname{font-size:18px}.hero{min-height:0}.hero .wrap{gap:40px}.pagehead{padding:48px 20px}.content{padding:48px 23px}.price strong{font-size:21px}}
/* Refined botanical branding: understated line work instead of cartoon symbols */
.art{overflow:hidden;background:linear-gradient(145deg,#f1f5f5,#fffdf9);border-color:#d2dedf;box-shadow:15px 15px 0 #e2ebed}
.art:before,.art:after{content:none}
.botanical-art{height:94%;width:94%;object-fit:contain;opacity:.8;filter:drop-shadow(0 2px 1px #ffffff70)}
.art span{bottom:34px;left:0;right:0;text-align:center;font-size:18px;letter-spacing:.5px;background:#fbfaf7c9;padding:6px 0}
.card .mark{height:43px;width:100px;margin:0 auto 17px;background:url('floral-divider.svg') center/contain no-repeat}
.card{position:relative;border-color:#e2e9e8;background:#fffefa}
.card:before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);height:1px;width:44%;background:#bba77f}
.section.center h2:after,.center h2:after{content:'';display:block;width:155px;height:32px;margin:20px auto 0;background:url('floral-divider.svg') center/contain no-repeat}
.pagehead:after{content:'';display:block;width:150px;height:32px;margin:18px auto 0;background:url('floral-divider.svg') center/contain no-repeat}
.hero{background:radial-gradient(circle at 90% 18%,#e4eef0 0,transparent 36%),linear-gradient(120deg,#fbfaf7,#f1f5f5)}
.banner{position:relative;overflow:hidden}
.banner:before,.banner:after{content:'';position:absolute;width:180px;height:250px;background:url('botanical.svg') center/contain no-repeat;opacity:.23;pointer-events:none}
.banner:before{left:-40px;bottom:-70px;transform:rotate(-25deg)}
.banner:after{right:-40px;top:-70px;transform:rotate(155deg)}
@media(max-width:600px){.banner:before,.banner:after{width:110px;opacity:.12}}

/* Exact approved brand assets */
.bar{padding-top:9px;padding-bottom:9px}
.site-logo{display:block;width:91px;height:91px;object-fit:contain;border-radius:50%;mix-blend-mode:multiply}
header .brand{flex-shrink:0}
.hero-banner{width:100%;background:#f8f6ef;overflow:hidden}
.hero-banner img{display:block;width:100%;height:auto;max-height:490px;object-fit:cover;object-position:center}
.hero .hero-copy{display:block;text-align:center;max-width:920px;padding-top:58px;padding-bottom:78px}
.hero .hero-copy>div{max-width:840px;margin:0 auto}
.hero .hero-copy h1{max-width:850px;margin-left:auto;margin-right:auto}
.hero .hero-copy .lead{margin-left:auto;margin-right:auto}
@media(max-width:700px){.site-logo{width:78px;height:78px}.hero-banner img{min-height:175px;object-fit:cover;object-position:60% center}.hero .hero-copy{padding:42px 23px 60px}}

/* Homepage: transparent navigation overlay, no opaque menu box. */
.home-page header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 20;
  background: transparent;
  border: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.home-page header .bar {
  max-width: 1250px;
  margin: 0 auto;
  padding: 14px 28px;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.home-page header .nav a {
  color: #233b54;
  text-shadow: 0 1px 8px rgba(255,255,255,.8);
  font-size: 13px;
}
.home-page header .nav a:hover,
.home-page header .nav a.active {
  color: #1a6798;
  text-decoration: underline;
  text-underline-offset: 6px;
}
.home-page .site-logo {
  width: 78px;
  height: 78px;
}
.home-page .hero-banner img {
  max-height: 510px;
}
@media (max-width: 700px) {
  .home-page header .bar {
    padding: 10px 12px;
    align-items: flex-start;
    gap: 8px;
  }
  .home-page .site-logo { width: 55px; height: 55px; }
  .home-page header .nav {
    justify-content: flex-end;
    gap: 4px 11px;
    padding-top: 4px;
  }
  .home-page header .nav a { font-size: 10px; line-height: 1.5; }
  .home-page .hero-banner img {
    min-height: 310px;
    object-fit: cover;
    object-position: 66% center;
  }
}

/* Elegant vertical navigation, floating directly on the bluebird banner. */
.home-page header .bar {
  align-items: flex-start;
  justify-content: space-between;
  padding: 18px 36px;
}
.home-page header .nav {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-end;
  gap: 4px;
  padding: 4px 0;
}
.home-page header .nav a {
  display: block;
  font-size: 13px;
  line-height: 1.65;
  font-weight: 600;
  letter-spacing: .6px;
  padding: 0 5px;
  color: #233b54;
  text-shadow: 0 1px 8px rgba(255,255,255,.95);
}
.home-page header .nav a.active {
  color: #1d6d9d;
  text-decoration: underline;
  text-underline-offset: 5px;
}
@media (max-width:700px) {
  .home-page header .bar { padding: 12px 16px; align-items:flex-start; }
  .home-page header .nav { gap: 1px; align-items:flex-end; }
  .home-page header .nav a { font-size: 11px; line-height: 1.65; letter-spacing: .1px; }
  .home-page .site-logo { width: 59px; height: 59px; }
}
/* Left-anchored logo and navigation; leave the right-side bluebird unobstructed. */
.home-page header .bar {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 12px;
  padding: 20px 38px;
}
.home-page .site-logo { width: 120px; height: 120px; object-fit: contain; }
.home-page header .nav {
  align-items: flex-start;
  gap: 5px;
  padding: 0;
}
.home-page header .nav a { text-align: left; padding: 1px 0; font-size: 14px; }
@media (max-width:700px) {
  .home-page header .bar { padding: 12px 17px; gap: 7px; }
  .home-page .site-logo { width: 86px; height: 86px; }
  .home-page header .nav { align-items: flex-start; gap: 1px; }
  .home-page header .nav a { font-size: 11px; line-height: 1.55; }
  .home-page .hero-banner img { min-height: 340px; }
}

/* Recurring bluebird detail taken from Jade's original floral artwork. */
.footer-bluebird {display:block;width:88px;height:88px;object-fit:cover;object-position:center;border-radius:50%;margin:0 auto 18px;border:2px solid rgba(233,241,245,.65);box-shadow:0 4px 18px rgba(16,43,63,.14)}
@media(max-width:600px){.footer-bluebird{width:70px;height:70px}}

/* Consistent floral banner on secondary pages, softened by a translucent ivory wash. */
.secondary-page .secondary-banner {position:relative;height:405px;overflow:hidden;background:#f8f7f2}
.secondary-page .secondary-banner img {display:block;width:100%;height:100%;max-height:none;min-height:0;object-fit:cover;object-position:center center}
.secondary-page .secondary-banner::after {content:"";position:absolute;inset:0;background:rgba(255,253,247,.29);pointer-events:none}
.secondary-page header .nav a {text-shadow:0 1px 9px rgba(255,255,255,.95)}
@media(max-width:700px){
 .secondary-page .secondary-banner{height:345px}
 .secondary-page .secondary-banner img{height:100%;max-height:none;min-height:0;object-position:67% center}
}

/* Final consistent placement: banner is immediately after the overlaid header
   on every page, and its top edge starts at the top of the viewport. */
body.home-page { margin: 0; }
body.home-page > header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100%;
  z-index: 30;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
body.home-page > .hero-banner,
body.home-page > main > .hero-banner {
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
  top: 0;
  width: 100%;
}
body.secondary-page > .secondary-banner {
  height: 405px;
}
body.secondary-page > .secondary-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
body.secondary-page > .pagehead { margin-top: 0; }
@media (max-width: 700px) {
  body.secondary-page > .secondary-banner { height: 345px; }
  body.secondary-page > .secondary-banner img { object-position: 67% center; }
}

/* Meet Jade: warm personal introduction with original portrait. */
.jade-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);align-items:center;gap:clamp(25px,5vw,60px);margin-bottom:35px}
.jade-intro-text h2{margin-top:12px}
.jade-portrait{margin:0;position:relative;padding:10px;background:#f4f6f5;border:1px solid #d8e5eb;border-radius:180px 180px 14px 14px;box-shadow:13px 13px 0 #e7f0f4}
.jade-portrait img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 35%;border-radius:170px 170px 8px 8px}
@media(max-width:720px){.jade-intro{grid-template-columns:1fr;gap:24px}.jade-portrait{max-width:370px;width:88%;margin:0 auto 20px}.jade-intro-text h2{font-size:clamp(30px,7vw,42px)}}

/* Meet Jade: centered portrait above the opening story on all screen sizes. */
.jade-intro{display:flex;flex-direction:column;align-items:stretch;gap:26px;margin-bottom:38px}
.jade-intro .jade-portrait{width:min(100%,390px);max-width:390px;margin:0 auto 14px}
.jade-intro .jade-intro-text{width:100%}
@media(max-width:700px){.jade-intro .jade-portrait{width:min(88%,350px);margin:0 auto 10px}}

/* Balanced editorial alignment across all six pages: centered presentation, readable prose. */
.pagehead, .pagehead h1, .pagehead p { text-align:center; }
.content { width:100%; max-width:920px; margin-inline:auto; }
.content > h2, .content > h3, .content > .lead,
.content > p:first-child, .content > .eyebrow { text-align:center; }
.content > h2 { max-width:740px; margin-left:auto; margin-right:auto; }
.content > .lead, .content > p:first-child { max-width:720px; margin-left:auto; margin-right:auto; }
.content > p:not(.lead), .jade-intro-text > p, .feature > p, .step p { max-width:720px; margin-left:auto; margin-right:auto; text-align:left; }
.jade-intro { align-items:center; }
.jade-intro-text { width:100%; max-width:760px; margin-inline:auto; }
.jade-intro-text h2, .jade-intro-text .eyebrow { text-align:center; }
.content .feature h2, .content .feature h3, .content .feature > .eyebrow { text-align:center; }
.content .feature { max-width:800px; margin-inline:auto; }
.steps { max-width:780px; margin-inline:auto; }
.step h3 { text-align:center; }
.step > div { flex:1; min-width:0; }
.cards .card, .cards .card h3, .cards .card p { text-align:center; }
.cards .card p { margin-left:auto; margin-right:auto; }
.price, .price strong { text-align:left; }
.note { max-width:760px; margin-left:auto; margin-right:auto; }
.note p { text-align:left; }
.contactrow { justify-content:center; }
.hero-copy, .hero-copy h1, .hero-copy .lead, .banner { text-align:center; }
@media(max-width:650px){
 .content { padding-left:22px; padding-right:22px; }
 .step { gap:13px; }
 .step:before { min-width:26px; font-size:22px; }
 .step h3 { text-align:left; }
}

/* Contact: consistent alignment, balanced columns, readable long address. */
.contactrow { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; width:min(100%,760px); margin:36px auto 22px; align-items:stretch; justify-content:center; }
.contactrow > div { min-width:0; padding:24px 18px; text-align:center; border:1px solid #e1e9ed; background:#ffffffb8; border-radius:8px; }
.contactrow strong { display:block; color:var(--navy); font-size:15px; margin-bottom:9px; }
.contactrow p { margin:0; text-align:center !important; max-width:none !important; }
.contactrow a { overflow-wrap:anywhere; word-break:normal; }
.contact-actions { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:12px; margin:4px auto 30px; }
.contact-actions .button { margin:0; text-align:center; }
@media(max-width:650px) { .contactrow { grid-template-columns:1fr; gap:12px; max-width:430px; } .contactrow > div { padding:18px 12px; } .contact-actions { flex-direction:column; } .contact-actions .button { width:min(100%,350px); } }

/* A quiet, personal tribute below the footer on every page. */
.memorial-banner{background:#eaf1f5;border-top:1px solid #d4e1e9;padding:24px 24px 28px;color:#29445e}
.memorial-inner{max-width:850px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:28px}
.memorial-photos{display:flex;flex-shrink:0;gap:10px;align-items:center}
.memorial-photos img{display:block;width:88px;height:88px;object-fit:cover;object-position:center 30%;border-radius:9px;border:3px solid rgba(255,255,255,.9);box-shadow:0 3px 12px rgba(35,59,84,.12)}
.memorial-words{text-align:center}
.memorial-line{font:italic 19px/1.5 'Playfair Display',serif;color:#29445e;margin:0 0 6px}
.memorial-dedication{font:500 11px/1.6 'DM Sans',sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:#6d8294;margin:0}
@media(max-width:620px){.memorial-inner{flex-direction:column;gap:14px}.memorial-photos img{width:78px;height:78px}.memorial-line{font-size:17px}.memorial-banner{padding:22px 18px 25px}}

/* Homepage introduction: centered like the other sections. */
.meet-home-section .meet-home-content{max-width:740px;margin:0 auto;padding-top:75px;padding-bottom:75px;text-align:center;display:block;}
.meet-home-section .meet-home-content h2,.meet-home-section .meet-home-content .eyebrow{text-align:center;}
.meet-home-section .meet-home-content p{max-width:630px;margin:0 auto 18px;text-align:center;}
.meet-home-section .meet-home-content .button{margin:16px auto 0;}

/* Brand mark: intentionally legible on small screens across all six pages. */
body .site-logo, body.home-page .site-logo { width:154px !important; height:154px !important; max-width:none; object-fit:contain; flex-shrink:0; }
body .brand { flex-shrink:0; }
@media (max-width:700px) {
 body .site-logo, body.home-page .site-logo { width:120px !important; height:120px !important; }
 body.home-page header .bar { padding:12px 14px; }
 body.home-page header .nav { flex-shrink:1; }
}
@media (max-width:370px) {
 body .site-logo, body.home-page .site-logo { width:106px !important; height:106px !important; }
}
/* Slightly larger signature logo; preserve space for the vertical links. */
body .site-logo, body.home-page .site-logo {width:176px !important;height:176px !important;}
@media (max-width:700px) {
 body .site-logo, body.home-page .site-logo {width:142px !important;height:142px !important;}
 body.home-page header .bar {gap:8px;}
}
@media (max-width:370px) {
 body .site-logo, body.home-page .site-logo {width:128px !important;height:128px !important;}
}

/* Banner composition: logo a little lower, navigation anchored to the banner base. */
body.home-page > header { height: min(37.24vw, 510px); pointer-events:none; }
body.home-page > header .bar { position:relative; height:100%; max-width:1250px; padding:0 38px; display:block; }
body.home-page > header .brand { position:absolute; top:34px; left:38px; pointer-events:auto; }
body.home-page > header .nav { position:absolute; left:38px; bottom:22px; display:flex; flex-direction:column; align-items:flex-start; gap:3px; padding:0; pointer-events:auto; }
body.home-page > header .nav a { white-space:nowrap; line-height:1.45; }
body.secondary-page > header { height:405px; }
@media(max-width:700px) {
 body.home-page > header { height:345px; }
 body.home-page:not(.secondary-page) > header { height:340px; }
 body.home-page > header .bar { padding:0 17px; }
 body.home-page > header .brand { top:24px; left:17px; }
 body.home-page > header .nav { left:17px; bottom:13px; gap:1px; }
 body.home-page > header .nav a { font-size:11px; line-height:1.45; white-space:nowrap; }
 body.secondary-page > header { height:345px; }
}

/* Final logo refinement: slightly larger without shifting bottom-anchored navigation. */
body .site-logo, body.home-page .site-logo {width:192px !important;height:192px !important;}
@media(max-width:700px){body .site-logo, body.home-page .site-logo {width:158px !important;height:158px !important;}}
@media(max-width:370px){body .site-logo, body.home-page .site-logo {width:144px !important;height:144px !important;}}

/* Consistent centred content presentation throughout all six pages. */
main, main .content, main .content p, main .content h2, main .content h3,
main .content .eyebrow, main .content .lead, main .content .small,
main .content .feature, main .content .jade-intro-text,
main .content .note, main .content .note p,
main .content .step, main .content .step p,
main .content .step h3, main .content .price,
main .content .price strong, main .content .contactrow,
main .content .contactrow p { text-align:center !important; }
main .content > p, main .content .feature > p,
main .content .jade-intro-text > p, main .content .step p,
main .content .note p { margin-left:auto; margin-right:auto; }
main .content .price { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; }
main .content .step { flex-direction:column; align-items:center; gap:4px; }
main .content .step:before { min-width:0; }
main .content .step > div { width:100%; }
main .content .note { border-left:0; border-top:3px solid var(--gold); }
main .content > .button { display:table; margin:24px auto 0; text-align:center; }

/* Qualifications and experience: quiet reassurance above the homepage closing invitation. */
.credentials-section{background:#f8f7f2;padding:76px 20px 82px;}
.credentials-section .credentials-intro{max-width:720px;margin:0 auto 30px;line-height:1.8;}
.credentials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1120px;margin:32px auto 0;}
.credentials-card{background:#fffdf9;border:1px solid #dce5ea;border-top:3px solid #b89b65;border-radius:9px;padding:26px 22px 24px;box-shadow:0 5px 22px rgba(31,65,92,.045);text-align:center;}
.credentials-card h3{color:#29445e;margin:6px 0 16px;}
.credentials-card p{line-height:1.65;margin:0 auto 12px;font-size:14px;}
.credentials-card strong{color:#29445e;}
.credentials-symbol{color:#b89b65;font-size:24px;line-height:1;}
@media(max-width:800px){.credentials-grid{grid-template-columns:1fr;max-width:540px;gap:14px}.credentials-section{padding:55px 18px 62px}.credentials-card{padding:23px 20px}}

/* Desktop homepage navigation: separate links from floral artwork; preserve mobile layout. */
@media (min-width: 701px) {
  body.home-page > header { position: relative !important; height: auto !important; background: #fffdf9 !important; border-bottom: 1px solid #e2e9ed !important; pointer-events: auto !important; }
  body.home-page > header .bar { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: 28px !important; height: auto !important; min-height: 116px; max-width: 1250px; padding: 12px 32px !important; }
  body.home-page > header .brand { position: static !important; display: flex !important; flex-shrink: 0; }
  body.home-page .site-logo { width: 104px !important; height: 104px !important; }
  body.home-page > header .nav { position: static !important; display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; justify-content: flex-end !important; align-items: center !important; gap: 10px 20px !important; padding: 0 !important; max-width: 960px; }
  body.home-page > header .nav a { font-size: 13px !important; line-height: 1.5 !important; white-space: normal !important; text-align: center !important; text-shadow: none !important; }
}

/* Centered banner navigation on desktop, clear of floral corners and bluebird. */
@media (min-width: 701px) {
 body.home-page > header { position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: min(37.24vw, 510px) !important; background: transparent !important; border: 0 !important; pointer-events: none !important; }
 body.home-page > header .bar { position: relative !important; display: block !important; height: 100% !important; max-width: 1250px; padding: 0 32px !important; }
 body.home-page > header .brand { position: absolute !important; top: 20px !important; left: 32px !important; pointer-events: auto !important; }
 body.home-page .site-logo { width: clamp(75px, 9vw, 115px) !important; height: clamp(75px, 9vw, 115px) !important; }
 body.home-page > header .nav { position: absolute !important; top: 50% !important; left: 50% !important; bottom: auto !important; transform: translate(-50%, -50%) !important; display: flex !important; flex-direction: column !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: center !important; gap: clamp(2px, .35vw, 7px) !important; width: min(38%, 420px) !important; padding: 8px 12px !important; pointer-events: auto !important; }
 body.home-page > header .nav a { font-size: clamp(11px, 1.15vw, 15px) !important; line-height: 1.45 !important; white-space: nowrap !important; text-align: center !important; text-shadow: 0 1px 7px #fff, 0 0 14px #fff !important; }
}

/* Desktop floral-banner navigation: shift into clear left-center space. */
@media (min-width: 701px) {
 body.home-page > header .nav { left: 41% !important; }
}

/* Desktop banner logo and menu legibility enhancement. */
@media (min-width: 701px) {
 body.home-page .site-logo { width: clamp(100px, 11vw, 150px) !important; height: clamp(100px, 11vw, 150px) !important; }
 body.home-page > header .nav { left: 41% !important; gap: clamp(3px, .45vw, 8px) !important; width: min(43%, 470px) !important; }
 body.home-page > header .nav a { font-size: clamp(14px, 1.45vw, 19px) !important; line-height: 1.4 !important; }
}

/* Slightly larger desktop homepage logo, requested refinement. */
@media (min-width: 701px) {
 body.home-page .site-logo { width: clamp(125px, 13vw, 175px) !important; height: clamp(125px, 13vw, 175px) !important; }
}

/* Final desktop logo enlargement, approximately 18 percent. */
@media (min-width: 701px) {
 body.home-page .site-logo { width: clamp(148px, 15.3vw, 206px) !important; height: clamp(148px, 15.3vw, 206px) !important; }
}
