.nav-shell{background:#fff;border-bottom:5px solid var(--orange);position:relative;z-index:3}
.nav-shell .nav{min-height:126px}
.logo{width:300px;height:120px;object-fit:cover;object-position:center 49%;display:block}
.hero{background:radial-gradient(circle at 9% 20%,#e72583 0 10px,transparent 11px),radial-gradient(circle at 93% 69%,#ff9847 0 12px,transparent 13px),radial-gradient(circle at 26% 85%,#ff9847 0 4px,transparent 5px),radial-gradient(circle at 75% 13%,#e72583 0 4px,transparent 5px),linear-gradient(122deg,#fff9f4 0%,#fff0e7 57%,#ffe1cc 100%)}
.hero-art:before,.hero-art:after{content:'';position:absolute;width:30px;height:30px;z-index:2;pointer-events:none;background:linear-gradient(45deg,transparent 42%,#e72583 43% 57%,transparent 58%),linear-gradient(-45deg,transparent 42%,#e72583 43% 57%,transparent 58%)}
.hero-art:before{left:-23px;top:26px;transform:rotate(14deg)}
.hero-art:after{right:13px;top:-18px;transform:rotate(-10deg) scale(.72);background-image:linear-gradient(45deg,transparent 42%,#ff9847 43% 57%,transparent 58%),linear-gradient(-45deg,transparent 42%,#ff9847 43% 57%,transparent 58%)}
.hero:before,.hero:after,.hero-grid:before,.hero-grid:after,.services .section-head:after,.bubble:after,.photo-grid figure:before{content:'';background:linear-gradient(0deg,transparent 43%,currentColor 48% 52%,transparent 57%),linear-gradient(90deg,transparent 43%,currentColor 48% 52%,transparent 57%),linear-gradient(45deg,transparent 47%,currentColor 49% 51%,transparent 53%),linear-gradient(-45deg,transparent 47%,currentColor 49% 51%,transparent 53%);border-radius:50%}
.hero:before,.hero:after{position:absolute;opacity:.85;z-index:0}
.hero:before{top:36px;left:6%;width:26px;height:26px;color:var(--pink)}
.hero:after{bottom:5px;right:5%;width:40px;height:40px;color:var(--orange)}
.hero-grid:before,.hero-grid:after{content:'';position:absolute;z-index:2;width:20px;height:20px;color:var(--pink)}
.hero-grid:before{top:13%;left:49%}.hero-grid:after{top:9%;right:3%;width:26px;height:26px;color:var(--orange)}
.intro{position:relative}
.intro:after{content:'';position:absolute;right:8%;bottom:34px;width:48px;height:19px;border:4px solid var(--orange);border-radius:999px;transform:rotate(-12deg)}
.photo-strip{padding:0 0 88px}
.photo-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:20px}
.photo-grid figure{position:relative;margin:0;overflow:hidden;border-radius:32px;border:7px solid #fff;box-shadow:10px 10px 0 var(--pink)}
.photo-grid figure:last-child{box-shadow:10px 10px 0 var(--orange);transform:translateY(25px) rotate(2deg)}
.photo-grid img{display:block;width:100%;height:290px;object-fit:cover}
.photo-grid figcaption{position:absolute;left:18px;bottom:14px;padding:7px 13px;border-radius:999px;background:#fff;color:var(--pink);font-weight:900}
.services{background-color:var(--pink);background-image:radial-gradient(circle at 5% 14%,#ff9847 0 12px,transparent 13px),radial-gradient(circle at 94% 84%,#ff9847 0 14px,transparent 15px),radial-gradient(circle at 18% 91%,#ffd1e7 0 4px,transparent 5px),radial-gradient(circle at 82% 10%,#ffd1e7 0 4px,transparent 5px)}
.services .wrap{position:relative}
.services .wrap:after{content:'';position:absolute;right:0;top:1px;width:44px;height:17px;border:3px solid #ff9847;border-radius:999px;transform:rotate(-12deg)}
.services .section-head:after{flex:0 0 28px;width:28px;height:28px;margin:0 7px 5px 0;color:#ff9847}
.areas{background-image:radial-gradient(circle at 11% 20%,#ff9847 0 10px,transparent 11px),radial-gradient(circle at 88% 76%,#e72583 0 11px,transparent 12px),radial-gradient(circle at 71% 10%,#e72583 0 4px,transparent 5px),radial-gradient(circle at 7% 82%,#ff9847 0 3px,transparent 4px)}
.county:nth-child(2){transform:translateY(-16px) rotate(-3deg)}.county:nth-child(3){transform:rotate(3deg)}
.contact-box{border:7px solid var(--pink);box-shadow:13px 13px 0 #ffd1e7}
.contact-copy{background-image:radial-gradient(circle at 89% 13%,#ffd1e7 0 4px,transparent 5px),radial-gradient(circle at 10% 84%,#fff2de 0 4px,transparent 5px)}
.photo-grid figure:before{position:absolute;top:12px;right:16px;width:26px;height:26px;z-index:1;color:#fff;filter:drop-shadow(0 2px 2px #48243c55)}
.bubble:after{width:17px;height:17px;color:var(--orange)}
.services .section-head:after{flex:0 0 28px;width:28px;height:28px;margin:0 7px 5px 0;color:#ff9847}
.contact-copy p:last-child{display:none}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
@media(max-width:760px){.nav-shell .nav{min-height:104px}.logo{width:250px;height:96px}.county:nth-child(2),.county:nth-child(3){transform:none}.intro:after{right:10%;bottom:12px}.photo-strip{padding-bottom:60px}.photo-grid{grid-template-columns:1fr}.photo-grid figure:last-child{transform:none}.photo-grid img{height:225px}}

/* Repeat the logo's soft four-point sparkle as a restrained brand motif. */
.hero-art:before,.hero-art:after,.hero:before,.hero:after,.services .section-head:after,.bubble:after,.photo-grid figure:before,.areas .wrap:after,.contact-copy:after{background:currentColor;-webkit-mask:url('assets/retro-sparkle.svg') center/contain no-repeat;mask:url('assets/retro-sparkle.svg') center/contain no-repeat;border-radius:0}
.hero-art:before{color:var(--pink)}
.hero-art:after{color:var(--orange);background-image:none}
.hero-grid:before,.hero-grid:after{display:none}
.areas .wrap{position:relative}
.areas .wrap:after{content:'';position:absolute;top:-14px;right:46%;width:30px;height:30px;color:var(--orange);pointer-events:none}
.contact-copy{position:relative}
.contact-copy:after{content:'';position:absolute;right:22px;bottom:18px;width:30px;height:30px;color:#fff2de;pointer-events:none}

/* Use the approved larger-wordmark logo and remove the header divider. */
.nav-shell{background:#fff!important;border:0!important;box-shadow:none!important}
.logo{width:310px;height:auto;max-width:100%;object-fit:contain;object-position:left center}
@media(max-width:760px){.nav-shell .nav{min-height:162px}.logo{width:275px}}

/* Keep decorative dots clear of copy and bring headings closer to the logo's retro slab lettering. */
.hero{background:linear-gradient(122deg,#fff9f4 0%,#fff0e7 57%,#ffe1cc 100%)}
.services,.areas,.contact-copy{background-image:none!important}
h1,h2,h3,.county{font-family:'Bree Serif',Georgia,serif!important;letter-spacing:normal}

/* Keep decorative marks in photography, away from every text block. */
.hero:before,.hero:after,.bubble:after,.services .section-head:after,.areas .wrap:after,.contact-copy:after{display:none!important}
.intro:after,.services .wrap:after{content:none!important}

/* Add brand-color stars and circle clusters in the sections' open padding and photo areas. */
.hero-art{background:radial-gradient(circle at 7% 72%,var(--pink) 0 10px,transparent 11px),radial-gradient(circle at 90% 19%,var(--orange) 0 7px,transparent 8px),radial-gradient(circle at 13% 82%,var(--orange) 0 3px,transparent 4px)}
.photo-strip{background-image:radial-gradient(circle at 2% 18%,var(--orange) 0 11px,transparent 12px),radial-gradient(circle at 97% 76%,var(--pink) 0 9px,transparent 10px),radial-gradient(circle at 4% 82%,var(--pink) 0 4px,transparent 5px)}
.intro,.services,.areas,.contact{position:relative;isolation:isolate}
.intro>* ,.services>.wrap,.areas>.wrap,.contact>.wrap{position:relative;z-index:1}
.intro:before,.services:before,.areas:before,.contact:before{content:'';position:absolute;bottom:22px;left:7%;width:25px;height:25px;color:var(--pink);background:currentColor;-webkit-mask:url('assets/retro-sparkle.svg') center/contain no-repeat;mask:url('assets/retro-sparkle.svg') center/contain no-repeat;pointer-events:none;z-index:0}
.intro:after,.services:after,.areas:after,.contact:after{content:'';position:absolute;right:8%;bottom:24px;width:15px;height:15px;border-radius:50%;background:var(--orange);box-shadow:22px -8px 0 var(--pink),40px 3px 0 2px var(--orange),-12px 13px 0 -4px var(--pink);pointer-events:none;z-index:0}
.services:before{color:#ffd1e7}.areas:before{color:var(--orange)}.contact:before{color:var(--orange)}
@media(max-width:760px){.intro:before,.services:before,.areas:before,.contact:before{left:5%;bottom:13px;width:20px;height:20px}.intro:after,.services:after,.areas:after,.contact:after{right:7%;bottom:15px;transform:scale(.8);transform-origin:right bottom}.photo-strip{background-position:center}}

/* A bolder repeating brand confetti row fills the reserved lower padding of each section. */
.intro:before,.services:before,.areas:before,.contact:before{left:0;right:0;bottom:8px;width:100%;height:48px;color:initial;background:url('assets/retro-confetti-strip.svg') repeat-x left center/180px 48px;mask:none;-webkit-mask:none}
.intro:after,.services:after,.areas:after,.contact:after{content:none!important}
@media(max-width:760px){.intro:before,.services:before,.areas:before,.contact:before{left:0;bottom:6px;width:100%;height:40px;background-size:150px 40px}}

/* Scatter the same stars and circles vertically in the side margins instead of a straight row. */
.intro:before,.services:before,.areas:before,.contact:before,.intro:after,.services:after,.areas:after,.contact:after{top:0;bottom:0;width:clamp(18px,calc((100vw - 1130px)/2 - 10px),150px);height:100%;background-image:url('assets/retro-confetti-gutter.svg');background-repeat:repeat-y;background-position:left top;background-size:72px 150px;mask:none;-webkit-mask:none;border-radius:0;box-shadow:none;transform:none}
.intro:before,.services:before,.areas:before,.contact:before{left:0;right:auto;content:'';display:block;background-image:url('assets/retro-confetti-gutter.svg');}
.services:before{background-image:url('assets/retro-confetti-gutter-light.svg')}
.intro:after,.services:after,.areas:after,.contact:after{left:auto;right:0;content:''!important;display:block;background-image:url('assets/retro-confetti-gutter.svg')}
.services:after{background-image:url('assets/retro-confetti-gutter-light.svg')}
