/* The opening is a birthday poster; Colton's other portraits introduce their own sections. */
.awning{height:68px;background-size:220px 68px}.hero-bunting{display:block;width:min(1280px,calc(100% - 32px));height:auto;max-height:92px;margin:-5px auto -13px;position:relative;z-index:1;pointer-events:none}main{width:min(1220px,calc(100% - 80px));padding-top:0}.carnival-hero{display:grid;grid-template-columns:54% 46%;align-items:center;padding:0;min-height:560px;position:relative;isolation:isolate}.hero-copy{position:relative;padding:12px 10px 27px;z-index:2}.carnival-hero h1{line-height:1}.carnival-hero h1 .name{font-size:clamp(87px,9.4vw,134px);line-height:1.03;transform:rotate(-2deg);letter-spacing:-.04em}.carnival-hero h1 .occasion{font-size:clamp(64px,6.55vw,93px);line-height:.96;white-space:normal;margin-top:10px;letter-spacing:-.035em}.carnival-hero .subtitle{font:900 clamp(25px,2.6vw,36px)/1.2 Birthday,Georgia,serif;color:var(--red);position:relative;display:inline-block;margin:26px 0 0}.carnival-hero .subtitle::after{content:'';display:block;width:70%;height:7px;background:var(--yellow);border-radius:50%;margin:6px auto 0;transform:rotate(-2deg)}.carnival-hero .party-intro{font-size:20px;line-height:1.5;margin:16px auto 0;max-width:470px;color:var(--blue)}.hero-colton{align-self:end;position:relative;z-index:1;margin-left:-14px;line-height:0}.hero-colton a{display:block}.hero-colton img{display:block;width:108%;max-width:620px;height:auto;aspect-ratio:1;object-fit:contain;margin-left:-4%;filter:drop-shadow(0 5px 0 #bd34290a)}.hero-star-one{width:51px;height:51px;left:-5px;top:48%;background:var(--yellow);transform:rotate(-12deg)}.hero-star-two{width:36px;height:36px;right:12px;top:3px;background:var(--green);transform:rotate(8deg)}
#party-details{position:relative;margin:0 0 0;padding:25px 30px;gap:0;border:0;min-height:160px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 170' preserveAspectRatio='none'%3E%3Cpath d='M25 5H1175Q1175 25 1195 25V62Q1178 62 1178 85Q1178 108 1195 108V145Q1175 145 1175 165H25Q25 145 5 145V108Q22 108 22 85Q22 62 5 62V25Q25 25 25 5Z' fill='%23fff8e6' stroke='%23bd3429' stroke-width='3'/%3E%3Cpath d='M31 10H1169Q1171 31 1189 31V57Q1172 63 1172 85Q1172 107 1189 113V139Q1171 139 1169 160H31Q29 139 11 139V113Q28 107 28 85Q28 63 11 57V31Q29 31 31 10Z' fill='none' stroke='%23edbb36' stroke-width='1'/%3E%3C/svg%3E") center/100% 100% no-repeat;z-index:3}#party-details .detail{display:flex;align-items:center;gap:20px;padding:0 24px;text-align:left}#party-details .detail+.detail{border-left:2px dashed var(--red)}.ticket-icon{width:74px;height:74px;flex-shrink:0;color:var(--red)}.ticket-icon.pin{width:58px;height:62px}.ticket-copy{min-width:0}#party-details h2{font-size:24px;line-height:1.2;color:var(--blue);margin-bottom:6px}#party-details address,#party-details .date-line{font-size:17px;line-height:1.4}#party-details .date-line{font-weight:700}#party-details .text-link{font-size:17px;padding-top:7px;color:var(--red)}.fair-nav{margin:22px 0 25px;font-weight:700;font-size:19px;gap:30px}.fair-nav span{color:var(--yellow);font-size:24px}.cinema{width:min(100%,1040px);margin-inline:auto}#invitation-film{scroll-margin-top:25px}.fairground,.birthday-fun{max-width:1040px;margin-inline:auto}.fairground{padding-top:70px}.fair-welcome{display:grid;grid-template-columns:260px 1fr;align-items:center;gap:44px;margin:0 0 28px}.fair-welcome .section-intro{margin:0;text-align:left;max-width:none}.fair-welcome .section-intro h2{font-size:clamp(40px,4.6vw,60px)}.fair-welcome .section-intro p{margin:0;font-size:21px}.colton-ticket img,.colton-train img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.colton-ticket a,.colton-train a{display:block}.birthday-welcome{display:grid;grid-template-columns:1fr 310px;align-items:center;gap:38px;margin-bottom:28px}.birthday-welcome .section-intro{margin:0;text-align:left;max-width:none}.birthday-welcome .section-intro h2{font-size:54px}.birthday-welcome .section-intro h2 br{display:initial}.birthday-welcome .section-intro p{margin:0}.birthday-fun{padding-top:65px}.birthday-moments{margin-top:20px}.birthday-parade{max-width:780px}.birthday-fun+footer{max-width:1040px;margin:auto}.hero-colton a:focus-visible,.colton-ticket a:focus-visible,.colton-train a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@media(min-width:1450px){.carnival-hero{min-height:575px}}
@media(max-width:1100px) and (min-width:761px){main{width:calc(100% - 70px)}.carnival-hero{min-height:475px}.carnival-hero h1 .name{font-size:96px}.carnival-hero h1 .occasion{font-size:70px}.carnival-hero .party-intro{font-size:18px}.carnival-hero .subtitle{font-size:28px}.hero-colton{align-self:center}.hero-star-one{left:-9px;width:33px;height:33px}.hero-star-two{width:27px;height:27px}.ticket-icon{width:45px;height:52px}.ticket-icon.pin{width:40px;height:48px}#party-details .detail{padding:0 15px;gap:13px}#party-details h2{font-size:20px}#party-details address{font-size:16px}.fair-welcome{grid-template-columns:210px 1fr;gap:24px}.fair-welcome .section-intro h2{font-size:46px}.birthday-welcome{grid-template-columns:1fr 250px;gap:24px}.birthday-welcome .section-intro h2{font-size:43px}}
@media(max-width:760px){.awning{height:39px;background-size:126px 39px}.hero-bunting{width:calc(100% - 16px);margin:-3px auto 0;min-height:48px;object-fit:cover}main{width:calc(100% - 40px);padding-top:0}.carnival-hero{display:flex;flex-direction:column;min-height:0;padding:0}.hero-copy{padding:8px 10px 0;width:100%}.carnival-hero h1 .name{font-size:clamp(64px,17vw,100px);line-height:1.03}.carnival-hero h1 .occasion{font-size:clamp(34px,8.4vw,57px);line-height:1.08;margin-top:6px;white-space:nowrap}.carnival-hero h1 .occasion br{display:none}.carnival-hero .subtitle{font-size:24px;margin-top:17px}.carnival-hero .subtitle::after{height:5px;margin-top:5px}.carnival-hero .party-intro{font-size:16px;margin-top:12px;max-width:360px}.hero-colton{align-self:center;width:75%;max-width:340px;margin:15px 0 0}.hero-colton img{width:100%;max-width:100%;margin:0}.hero-star-one{left:-2px;top:54%;width:26px;height:26px}.hero-star-two{right:1px;top:10px;width:27px;height:27px}#party-details{grid-template-columns:1fr;margin-top:1px;gap:16px;padding:25px 25px;min-height:0;background-size:100% 100%}#party-details .detail{padding:0;gap:18px}#party-details .detail+.detail{border-left:0;border-top:1px dashed var(--red);padding-top:18px}.ticket-icon{width:43px;height:43px}.ticket-icon.pin{width:39px;height:43px}#party-details h2{font-size:20px;line-height:1.22}#party-details address,#party-details .date-line{font-size:16px}#party-details .text-link{font-size:16px;min-height:40px}.fair-nav{font-size:14px;gap:12px;margin:18px 0 20px}.fair-nav span{font-size:16px}.fair-welcome{grid-template-columns:1fr;gap:20px;margin-bottom:20px}.colton-ticket{width:185px;margin:0 auto}.fair-welcome .section-intro{text-align:center}.fair-welcome .section-intro h2{font-size:36px}.fair-welcome .section-intro p{font-size:17px}.fairground{padding-top:42px}.birthday-welcome{display:flex;flex-direction:column;gap:22px;margin-bottom:25px}.birthday-welcome .section-intro{text-align:center}.birthday-welcome .section-intro h2{font-size:35px}.birthday-welcome .section-intro p{font-size:17px}.colton-train{width:240px;max-width:80%;margin:auto}.birthday-fun{padding-top:46px}.birthday-moments{margin-top:15px}.birthday-parade{max-width:100%}}
@media(max-width:350px){main{width:calc(100% - 32px)}.carnival-hero h1 .name{font-size:61px}.carnival-hero h1 .occasion{font-size:31px}.carnival-hero .subtitle{font-size:21px}.carnival-hero .party-intro{font-size:15px}.hero-colton{width:80%}.ticket-icon{display:none}#party-details{padding:24px}#party-details h2{font-size:20px}.fair-nav{gap:9px;font-size:13px}.fair-nav span{font-size:14px}.fair-welcome .section-intro h2{font-size:31px}.birthday-welcome .section-intro h2{font-size:31px}}
@media print{.hero-bunting{display:none}.hero-colton{max-width:280px}.carnival-hero{min-height:0}.fair-welcome,.birthday-welcome{break-inside:avoid}}
