:root{--paper:#faf7f0;--white:#fffefa;--ink:#193e35;--muted:#596960;--orange:#b44329;--lime:#e5eccd;--line:#d9ded1;--blue:#e4edf0;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,summary:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid #a33e26;outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{line-height:1.08;margin:0 0 24px;letter-spacing:-.045em}h1,h2,h3,h4,h5,h6{font-family:"Trebuchet MS","Avenir Next",system-ui,sans-serif;font-weight:800;letter-spacing:-.045em;line-height:1.13}h1{font-size:clamp(44px,5.5vw,78px)}h2{font-size:clamp(32px,3.4vw,48px)}h3{font-size:23px;font-weight:600;letter-spacing:-.025em}p{margin:0 0 22px}em{font-weight:inherit}h1 em,h2 em{color:var(--orange)}.shell{width:min(1220px,calc(100% - 80px));margin-inline:auto}.review-bar{padding:7px 24px;background:var(--ink);color:white;font-size:10px;font-weight:700;letter-spacing:.12em;text-align:center}.review-bar span{font-weight:400;letter-spacing:0;margin-left:16px;color:#dce4df}.top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:18px;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:block}.brand img{width:148px;height:auto;max-height:72px;object-fit:contain}nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:650}nav a{text-decoration:none}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--orange);color:white;border:1px solid var(--orange);padding:15px 24px;min-height:50px;border-radius:6px;text-decoration:none;font-size:14px;font-weight:650;line-height:1.4}.button:hover{background:#94351f}.button.small{padding:11px 18px;min-height:44px;font-size:13px}.secondary{background:transparent;color:var(--ink);border-color:var(--ink)}.secondary:hover{background:var(--ink);color:white}.text-link{font-size:14px;font-weight:650;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:6px;display:inline-block}.actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin:30px 0}.eyebrow{font-size:10px;font-weight:750;letter-spacing:.16em;text-transform:uppercase;line-height:1.5;margin-bottom:20px}.lede{font-size:18px;line-height:1.7;color:var(--muted);max-width:48ch}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px;padding-block:72px 85px}.hero h1{font-size:clamp(45px,5.2vw,76px);line-height:1.04}.hero-note{font-size:11px;color:var(--muted);margin-top:24px}.sun{font-size:25px;color:var(--orange);vertical-align:middle;display:inline-block;margin-right:9px}.hero-art{position:relative;padding:22px 24px 30px}.hero-art:before{content:"";position:absolute;inset:6% -2% 4% 3%;background:#e7eadb;border-radius:48% 48% 12% 38%;transform:rotate(-8deg);z-index:-1}.art-label{font-size:9px;line-height:1.5;letter-spacing:.12em;font-weight:700;transform:rotate(-3deg);margin-bottom:12px}.photo-card{margin:0;transform:rotate(4deg);padding:14px 14px 0;background:white;box-shadow:0 16px 35px #213b2a16;border:1px solid #e8e4db;border-radius:3px}.photo-card img{width:100%;aspect-ratio:1.08;object-fit:cover;border-radius:2px}.photo-card figcaption{padding:16px 4px;font-family:Georgia,serif;font-style:italic;font-size:16px;text-align:center}.memory-sticker{position:absolute;bottom:3%;left:-3%;width:128px;height:128px;border-radius:50%;background:#f0d7a0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;font-size:14px;line-height:1.45;transform:rotate(-12deg);box-shadow:0 5px 0 #d4bc8e33}.memory-sticker em{font-family:Georgia,serif;font-size:20px}.art-flower{position:absolute;top:-8px;right:-8px;font-size:75px;color:var(--orange);line-height:1}.ribbon{background:var(--ink);color:#f6f1df;padding:19px 0}.ribbon .shell{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.ribbon i{color:#e8d596;font-size:20px;font-style:normal}.section{padding-block:84px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-heading h2{margin:0}.section-heading>p{font-size:15px;color:var(--muted);margin:0}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-bottom:35px}.step{border-top:1px solid #a5b5a5;padding-top:22px}.step-number{font:italic 32px Georgia,serif;color:var(--orange);display:block;margin-bottom:24px}.step h3{max-width:19ch}.step p{font-size:14px;color:var(--muted);max-width:35ch}.gallery-band{background:#edf0e6}.sample-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.sample-tile{display:block;background:#fffefa;padding:12px 12px 0;text-decoration:none;border-radius:8px;box-shadow:0 4px 12px #1b3a2810}.sample-tile img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px}.sample-tile span{display:flex;align-items:center;justify-content:space-between;padding:18px 4px;font-size:13px;font-weight:600}.toolbox{display:grid;grid-template-columns:1fr 1fr;gap:80px}.toolbox>div>p:not(.eyebrow){max-width:40ch;color:var(--muted);font-size:15px}.toolbox-links a{display:flex;align-items:center;gap:25px;border-bottom:1px solid var(--line);padding:24px 0;text-decoration:none}.toolbox-links a:first-child{border-top:1px solid var(--line)}.toolbox-links a>span{font:italic 24px Georgia,serif;color:var(--orange)}.toolbox-links h3{font-size:20px;margin-bottom:6px}.toolbox-links p{font-size:13px;color:var(--muted);margin:0}.toolbox-links b{margin-left:auto;font-size:20px}.planning{background:var(--lime);padding:40px 46px;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:35px}.planning h2{font-size:36px;margin-bottom:15px}.planning p:not(.eyebrow){font-size:14px;max-width:64ch;margin:0}.planning .button{flex-shrink:0}.faq-teaser{max-width:850px;margin-left:auto}details:not(.nav-menu){border-bottom:1px solid var(--line);padding:21px 0}summary{cursor:pointer;font-weight:600;line-height:1.5}details:not(.nav-menu) summary{list-style:none;position:relative;padding-right:30px}details:not(.nav-menu) summary:after{content:"+";position:absolute;right:0;color:var(--orange);font-size:24px;font-weight:400;top:-4px}details[open]:not(.nav-menu) summary:after{content:"-"}details[open]:not(.nav-menu) summary{margin-bottom:18px}details p{font-size:15px;line-height:1.8;color:var(--muted)}.final-band{background:#e8d8c6;text-align:center;padding-block:66px}.final-band h2{font-size:clamp(38px,4.3vw,62px);margin-bottom:30px}.nav-menu{position:relative}.nav-menu summary{font-size:13px;list-style:none}.nav-menu summary:after{content:"\2304";margin-left:6px}.nav-menu>div{position:absolute;right:0;top:35px;width:245px;background:var(--white);padding:14px;border:1px solid var(--line);box-shadow:0 15px 30px #193e3515;border-radius:8px}.nav-menu>div a{display:block;padding:9px 12px}.nav-menu>div a:hover{background:var(--lime)}footer{background:var(--ink);color:#e4e8df;padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:35px;padding-bottom:50px}.footer-brand{font-family:Georgia,serif;font-size:28px;color:white;text-decoration:none}.footer-brand span{font-size:12px;vertical-align:top}.footer-grid h2{font-family:inherit;font-size:11px;letter-spacing:.1em;font-weight:700;text-transform:uppercase;color:#e7d299;margin-bottom:20px}.footer-grid p{font-size:12px;margin-top:15px;line-height:1.8;color:#c7d2ca}.footer-grid a:not(.footer-brand){display:block;font-size:12px;margin-bottom:8px;text-decoration:none;overflow-wrap:anywhere}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #527166;padding-block:20px;font-size:10px;color:#c6d3cb}.footer-bottom>div{display:flex;gap:20px}.page-intro{padding-block:65px 50px}.page-intro h1{max-width:20ch;font-size:clamp(42px,5vw,67px);margin-bottom:25px}.page-intro .lede{max-width:65ch}.page-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:65px;padding-bottom:80px}.page-sidebar{padding-top:12px}.page-sidebar>a{display:flex;justify-content:space-between;gap:15px;font-size:13px;padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none}.page-sidebar>a[aria-current]{color:var(--orange);font-weight:750}.page-body{min-width:0}.page-body h2{font-size:31px;margin-top:40px}.page-body h3,.page-body h4,.page-body h5,.page-body h6{font-family:inherit;font-size:20px;line-height:1.45;letter-spacing:-.015em;margin:30px 0 16px}.page-body p,.page-body li{font-size:15px;line-height:1.85}.page-body p{max-width:78ch}.page-body a{overflow-wrap:anywhere}.page-body img{border-radius:8px;max-height:650px;object-fit:contain;width:auto;margin:24px 0}.page-body img[width="1"]{display:none}.standalone{max-width:850px;padding-bottom:70px}.download-section{padding:28px;background:#e9ede3;border-radius:12px;margin-bottom:38px}.download-section h2{margin:0 0 16px}.download-section>p{font-size:13px;color:var(--muted)}.download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.download-card{display:flex;align-items:flex-start;gap:14px;padding:18px;background:var(--white);border:1px solid var(--line);border-radius:8px;text-decoration:none;min-width:0}.download-card:hover{border-color:var(--orange)}.file-icon{color:var(--orange);font-size:26px;line-height:1.2}.download-card>span:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}.download-card small{font-size:9px;letter-spacing:.08em;color:var(--muted)}.download-card strong{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.download-card>span>span{font-size:11px;color:var(--muted)}.legacy-content>h2:first-child{margin-top:0}.legacy-content p:has(>img:only-child){margin-block:24px}.preserved-gallery{display:flex;flex-wrap:wrap;align-items:flex-start;gap:18px}.preserved-gallery>p,.preserved-gallery>h2{width:100%}.preserved-gallery>a:has(img){width:calc(33.333% - 12px);background:white;padding:8px;border-radius:8px}.preserved-gallery>a img{margin:0;width:100%;aspect-ratio:1;object-fit:cover}.preserved-gallery>h3{font-size:12px;width:100%;margin:0}.color-guide{display:block}.color-guide>img{width:150px;float:left;margin:12px 30px 12px 0}.color-guide h3{clear:both;padding-top:25px;border-top:1px solid var(--line)}.color-guide:after{content:"";display:block;clear:both}.page-cta{padding:25px;background:var(--lime);border-radius:12px;margin-top:45px}.page-cta h2{margin:0 0 20px;font-size:28px}.faq-search{padding:24px;background:var(--lime);border-radius:10px;margin-bottom:30px}.faq-search label{display:block;font-weight:600;font-size:13px;margin-bottom:8px}.faq-search input{display:block;width:100%;border:1px solid #9faa93;padding:13px 15px;background:var(--white);border-radius:5px;font:inherit;font-size:14px}.faq-search p{font-size:12px;margin:8px 0 0;color:var(--muted)}[hidden]{display:none!important}.archive-note{padding:18px 22px;background:#f2e5cb;border-radius:8px;font-size:12px!important}.article-grid,.resource-hub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.article-card,.resource-hub>a{padding:26px;border:1px solid var(--line);border-radius:10px;background:var(--white);text-decoration:none}.article-card h2,.resource-hub h2{font-size:29px;margin:18px 0}.article-card small,.resource-hub small{font-size:10px;letter-spacing:.1em;color:var(--orange)}.article-card span,.resource-hub span{font-size:12px}.resource-hub{padding-top:0}.site-map-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:50px}.site-map-grid a{font-size:14px;padding:14px;border-bottom:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact-grid h2{margin-top:0}.address-card{padding:26px;background:var(--lime);border-radius:12px}.skip{position:absolute;left:-10000px}.skip:focus{left:15px;top:15px;z-index:100;background:white;padding:12px}table{border-collapse:collapse;width:100%;display:block;overflow:auto}th,td{padding:12px;border:1px solid var(--line);text-align:left}blockquote{margin:30px 0;padding:20px 26px;background:#edf0e6;border-left:3px solid var(--orange)}.wp-block-group{box-sizing:border-box}.wp-block-post-content>p,.wp-block-post-content>h2,.wp-block-post-content>h3{max-width:850px}.wp-block-post-title{max-width:1220px;margin:55px auto;width:calc(100% - 80px)}
@media(min-width:1500px){.hero{gap:100px}.hero h1{font-size:82px}}
@media(max-width:1000px){.shell{width:calc(100% - 48px)}nav{gap:16px;font-size:12px}.hero{gap:25px;padding-block:48px}.hero h1{font-size:53px}.hero-art{padding-inline:16px}.memory-sticker{width:104px;height:104px;font-size:12px}.art-flower{font-size:60px}.steps-grid{gap:25px}.page-layout{grid-template-columns:180px minmax(0,1fr);gap:35px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:30px}.toolbox{gap:40px}}
@media(max-width:700px){.shell{width:calc(100% - 36px)}.review-bar{font-size:9px}.review-bar span{display:none}.top{align-items:flex-start;flex-direction:column;gap:15px;padding-block:15px}.brand img{width:125px;max-height:55px}nav{width:100%;gap:12px;flex-wrap:wrap;justify-content:space-between}nav .button{font-size:11px;min-height:40px;padding:10px 12px}.nav-menu summary{font-size:11px}.nav-menu>div{left:auto;right:-50px}.hero{grid-template-columns:1fr;gap:30px;padding-block:40px 50px}.hero h1{font-size:clamp(43px,10.5vw,68px)}.hero-copy .lede{font-size:16px}.actions{gap:20px}.hero-art{max-width:490px;margin-inline:auto;width:100%;padding:12px 27px 22px}.art-label{font-size:8px}.photo-card{padding:10px 10px 0}.photo-card figcaption{font-size:13px}.memory-sticker{left:0;bottom:0}.art-flower{right:8px;top:-4px}.ribbon .shell{flex-wrap:wrap;justify-content:center;gap:12px 20px;font-size:10px}.ribbon i{display:none}.section{padding-block:50px}.section-heading{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:28px}.section-heading h2{font-size:37px}.steps-grid{grid-template-columns:1fr;gap:20px}.step{display:grid;grid-template-columns:50px 1fr;gap:0 18px}.step-number{grid-row:1/3;margin:0;font-size:29px}.step h3{font-size:22px;max-width:none;margin-bottom:13px}.step p{grid-column:2;max-width:none;margin-bottom:6px}.sample-grid{grid-template-columns:1fr;gap:22px}.sample-tile img{aspect-ratio:1.2}.sample-tile span{font-size:14px}.toolbox{grid-template-columns:1fr;gap:24px}.planning{padding:27px;flex-direction:column;align-items:flex-start;gap:24px}.planning h2{font-size:32px}.faq-teaser{margin:0}.final-band{padding-block:45px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:15px}.page-intro{padding-block:42px 32px}.page-intro h1{font-size:42px}.page-layout{grid-template-columns:1fr;gap:20px;padding-bottom:45px}.page-sidebar{display:none}.page-body p,.page-body li{font-size:14px}.download-grid{grid-template-columns:1fr}.download-section{padding:20px}.download-card{padding:16px}.preserved-gallery>a:has(img){width:calc(50% - 9px)}.article-grid,.resource-hub,.contact-grid{grid-template-columns:1fr}.site-map-grid{grid-template-columns:1fr 1fr}.site-map-grid a{font-size:12px}.faq-search{padding:20px}.standalone{width:calc(100% - 36px)}.legacy-content{overflow-wrap:anywhere}.wp-block-post-title{width:calc(100% - 36px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero-copy,.hero-art{min-width:0}@media(max-width:700px){.hero{grid-template-columns:minmax(0,1fr)}}
.preserved-gallery>.full-gallery{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.full-gallery .sample-tile img{width:100%;margin:0;aspect-ratio:1;object-fit:cover}.full-gallery .sample-tile span{font-size:11px;gap:8px}@media(max-width:900px){.preserved-gallery>.full-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.preserved-gallery>.full-gallery{grid-template-columns:minmax(0,1fr)}}
/* WordPress block-runtime parity with the approved concept. */
.wp-block-navigation .wp-block-navigation__container{gap:28px}.wp-block-navigation__container>.wp-block-navigation-item:last-child>a{background:var(--orange);color:white;padding:12px 20px;border-radius:6px}.wp-block-navigation__submenu-container{background:var(--white)!important;border:1px solid var(--line)!important;min-width:230px}.wp-block-navigation__submenu-container .wp-block-navigation-item{padding:6px 12px}.wp-block-post-content .hero h1{margin-bottom:28px}.wp-block-post-content .hero .eyebrow{margin-bottom:20px}.wp-block-post-content .actions{margin-block:30px}.wp-block-post-content .hero-note{margin-top:24px}.wp-block-post-content .section-heading{margin-bottom:42px}.wp-block-post-content .step h3{margin-bottom:20px}.wp-block-post-content .step-number{margin-bottom:24px}.wp-block-post-content .section p{margin-bottom:22px}.wp-block-post-content .band[aria-label="Current turnaround"]{width:min(1220px,calc(100% - 80px));margin:18px auto 0;padding:12px 18px;background:var(--lime);border-radius:6px;font-size:12px}.wp-block-post-content .hero .wp-block-buttons{display:inline-flex}.wp-block-post-content .hero .actions>.wp-block-buttons{margin:0}.wp-block-post-content .hero .actions>p{margin:0}.wp-block-post-content .steps-grid{margin-bottom:35px}.wp-block-post-content .planning p{margin-bottom:0}.wp-block-post-content .final-band h2{margin-bottom:30px}.wp-block-post-content .download-grid>.wp-block-paragraph,.wp-block-post-content .download-grid>p{margin:0}.wp-block-post-content .page-body h2{margin-top:40px;margin-bottom:24px}.wp-block-post-content .page-body>h2:first-child{margin-top:0}.wp-block-post-content .page-body p{margin-bottom:22px}.wp-block-post-content .sample-tile figure{margin:0}.wp-block-post-content .sample-tile>p:not(:last-child){margin:12px 4px 0}.wp-block-post-content .sample-tile>p:last-child{padding:16px 4px;margin:0;font-size:13px}.wp-block-post-content .toolbox-links>.wp-block-group{display:flex;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.wp-block-post-content .toolbox-links>.wp-block-group:first-child{border-top:1px solid var(--line)}.wp-block-post-content .toolbox-links>.wp-block-group>p:last-child{flex-basis:100%;font-size:13px;margin:0}.wp-block-post-content .toolbox-links h3{margin-bottom:8px}.wp-block-post-content .toolbox-links p{margin-bottom:0}.wp-block-post-content .hero-art>.art-label{margin-bottom:12px}.wp-block-post-content .memory-sticker p{margin:0}.wp-block-post-content .memory-sticker em{font-size:20px}footer .footer-grid p{margin-top:15px}.wp-block-navigation__responsive-container.is-menu-open{background:var(--paper)!important;color:var(--ink)!important;padding:30px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:20px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{border:0!important;padding:0!important}.wp-block-navigation__responsive-container-close,.wp-block-navigation__responsive-container-open{min-height:44px;min-width:44px;justify-content:center;align-items:center}
@media(max-width:700px){.wp-block-post-content .band[aria-label="Current turnaround"]{width:calc(100% - 36px);font-size:11px;margin-top:12px}.top:has(.wp-block-navigation){flex-direction:row;align-items:center}.wp-block-post-content .hero h1{margin-bottom:24px}.wp-block-post-content .step-number{margin-bottom:0}.wp-block-post-content .section-heading{margin-bottom:28px}.wp-block-post-content .hero-copy>.actions{gap:18px}.wp-block-post-content .sample-tile>p:last-child{font-size:12px}}
/* Keep the decorative hero shape inside narrow layouts without clipping content. */
.hero-art::before{inset:6% 5% 4% 8%;transform:rotate(-4deg)}
/* PDF previews: real first pages, kept proportional and fully visible. */
.download-card.template-download{display:flex;flex-direction:column;align-items:stretch;gap:14px;min-width:0}
.template-download .wp-block-image{margin:0!important;width:100%}
.template-download img,.template-thumbnail{display:block;width:100%;height:190px!important;object-fit:contain;background:#fff;border:1px solid #deded5;border-radius:5px}
.template-download p{margin:0!important;overflow-wrap:anywhere}
.template-download small{font-size:11px}
.template-download a:focus-visible{outline:3px solid #a44526;outline-offset:4px}
/* Compact template cards: preview beside the file details. */
.download-card.template-download{display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:16px;padding:14px;min-height:118px}
.template-download .wp-block-image{width:82px;margin:0!important}
.template-download img,.template-thumbnail{width:82px!important;height:94px!important;object-fit:contain}
.template-download>p,.template-download>span{min-width:0;margin:0!important;line-height:1.5;font-size:12px}
.template-download strong{font-size:14px;line-height:1.3}
.download-grid:has(.template-download){gap:12px}
@media(max-width:400px){.download-card.template-download{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:12px;min-height:104px}.template-download .wp-block-image,.template-download img,.template-thumbnail{width:64px!important}.template-download img,.template-thumbnail{height:80px!important}.template-download strong{font-size:13px}}

.template-download img,.template-thumbnail{margin:0!important}.template-download .wp-block-image>a{display:block;line-height:0}

/* Three compact template cards per row where space permits. */
.download-grid:has(.template-download){grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1050px){.download-grid:has(.template-download){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.download-grid:has(.template-download){grid-template-columns:minmax(0,1fr)}}
/* Four template cards per row on wide desktop screens. */
@media(min-width:1200px){.download-grid:has(.template-download){grid-template-columns:repeat(4,minmax(0,1fr))}.download-card.template-download{grid-template-columns:60px minmax(0,1fr);gap:10px;padding:10px}.template-download .wp-block-image,.template-download img{width:60px!important}.template-download img{height:80px!important}.template-download strong{font-size:13px}}

/* Clear landing-page hierarchy and comfortable, wrapping CTA groups. */
.cf-search-landing .wp-block-post-title{text-align:center;text-wrap:balance}
.cf-search-landing .wp-block-post-content .wp-block-buttons{display:flex;flex-wrap:wrap;gap:18px 24px;margin-block:28px 36px}
.cf-search-landing .wp-block-post-content .wp-block-buttons>.wp-block-button{margin:0}
/* Shared button feedback, including navigation actions and form controls. */
:is(.button,.wp-block-button__link,.wp-element-button,button,input[type="submit"],input[type="button"]){transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;cursor:pointer}
@media(hover:hover){
 :is(.button,.wp-block-button__link,.wp-element-button):not(:disabled):hover{background-color:#94351f;color:#fff;box-shadow:0 5px 12px #193e3526;transform:translateY(-2px)}
 :is(button,input[type="submit"],input[type="button"]):not(.wp-block-button__link):not(:disabled):hover{box-shadow:0 0 0 3px #193e3526;transform:translateY(-1px)}
}
:is(.button,.wp-block-button__link,.wp-element-button,button,input[type="submit"],input[type="button"]):focus-visible{outline:3px solid #193e35;outline-offset:4px;box-shadow:0 0 0 2px var(--paper)}
:is(.button,.wp-block-button__link,.wp-element-button,button,input[type="submit"],input[type="button"]):active{transform:translateY(0)}
:is(button,input):disabled{cursor:not-allowed}
@media(prefers-reduced-motion:reduce){
 :is(.button,.wp-block-button__link,.wp-element-button,button,input[type="submit"],input[type="button"]){transition:none!important;transform:none!important}
}
/* The navigation Get Started link is visually a button too. */
.wp-block-navigation__container>.wp-block-navigation-item:last-child>a{transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}
@media(hover:hover){.wp-block-navigation__container>.wp-block-navigation-item:last-child>a:hover{background-color:#94351f;box-shadow:0 5px 12px #193e3526;transform:translateY(-2px)}}
.wp-block-navigation__container>.wp-block-navigation-item:last-child>a:focus-visible{outline:3px solid #193e35;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.wp-block-navigation__container>.wp-block-navigation-item:last-child>a{transition:none!important;transform:none!important}}
/* Editable sample galleries on the search landing pages. */
.cf-landing-samples{margin-block:42px 52px;padding:28px;background:var(--lime);border-radius:var(--radius)}
.cf-landing-samples>h2{margin-top:0!important}
.cf-landing-sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-block:26px}
.cf-landing-sample-grid>.wp-block-image{margin:0;min-width:0;background:var(--white);padding:12px;border-radius:10px;overflow:hidden}
.cf-landing-sample-grid img{display:block;width:100%;height:230px;object-fit:contain;margin:0!important}
.cf-landing-sample-grid figcaption{margin:12px 0 4px;font-size:13px;line-height:1.5;text-align:center;color:var(--ink)}
@media(max-width:700px){.cf-landing-samples{padding:18px}.cf-landing-sample-grid{grid-template-columns:minmax(0,1fr);gap:18px}.cf-landing-sample-grid img{height:280px}}
/* Kindergarten teacher direction: cream paper, teal, sky and sunshine. */
:root{--paper:#fffaf0;--white:#fffefa;--ink:#173f48;--muted:#4b6267;--orange:#b54132;--lime:#dff0f4;--line:#c9dde0;--blue:#e4f2f8;--sunshine:#f8cf59;--teal:#126b70;--radius:22px}
body{background:var(--paper);color:var(--ink)}
.cf-classroom-banner{margin:0!important;padding:9px 20px;background:var(--teal);color:white;text-align:center;font-size:12px;font-weight:700;letter-spacing:.04em}
header .top{border-bottom:2px solid var(--line);padding-block:22px}
header .brand{background:white;padding:12px 18px;border-radius:18px;box-shadow:0 3px 0 #d9e9e8}
header .brand img{width:145px}
header nav{font-size:14px}
.wp-block-navigation__container>.wp-block-navigation-item:last-child>a{border-radius:999px!important;padding:13px 23px!important}
.home :is(h1,h2,h3),footer :is(h1,h2,h3),.cf-footer-invite h2{font-family:"Trebuchet MS","Avenir Next",system-ui,sans-serif;font-weight:800;letter-spacing:-.045em;line-height:1.13}
.home h1{font-size:clamp(42px,5vw,72px)}
.home .hero{padding-block:56px 74px;gap:55px;align-items:center}
.home .hero h1{font-size:clamp(42px,5vw,72px);line-height:1.08}
.home .hero .eyebrow{color:var(--teal);font-size:11px;letter-spacing:.11em}
.cf-teacher-note{display:inline-block;max-width:100%;padding:9px 15px;margin:0 0 22px!important;border-radius:10px;background:var(--sunshine);color:var(--ink);font-size:13px;font-weight:750;line-height:1.5;transform:rotate(-1deg)}
.home .hero .lede{font-size:19px;line-height:1.65;color:var(--muted)}
.home .hero-art{padding:20px 25px 35px}
.home .hero-art:before{background:#d8edf1;inset:1% 0 0;border-radius:32% 24% 35% 22%;transform:rotate(-4deg)}
.home .photo-card{padding:16px 16px 0;border:0;border-radius:16px;transform:rotate(3deg);box-shadow:0 14px 0 #f8cf5966,0 22px 32px #173f4818}
.home .photo-card img{aspect-ratio:1.05;object-fit:contain;background:white;border-radius:9px}
.home .photo-card figcaption{font-family:"Trebuchet MS",system-ui,sans-serif;font-style:normal;font-weight:700;padding:16px 4px;font-size:15px}
.home .memory-sticker{background:var(--sunshine);color:var(--ink);border:3px dashed #b18826;box-shadow:0 4px 0 #173f4814}
.home .memory-sticker em{font-family:inherit;font-weight:800;font-size:20px}
.home .art-flower{color:var(--orange)}
.home .ribbon{background:var(--sunshine);color:var(--ink);border-top:2px dashed #d4aa3b;border-bottom:2px dashed #d4aa3b}
.home .ribbon i{color:var(--teal)}
.home .section h2{font-size:clamp(30px,3.1vw,46px)}
.home .steps-grid{gap:22px;align-items:stretch}
.home .step{background:white;padding:26px;border:1px solid var(--line);border-radius:20px;box-shadow:0 5px 0 #dff0f4}
.home .step-number{background:var(--sunshine);color:var(--ink);border-radius:16px;display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;font-size:27px;transform:rotate(-4deg)}
.home .step h3{font-size:25px;line-height:1.2}
.home .sample-tile{background:white;border:1px solid var(--line);border-radius:20px;padding:12px;box-shadow:0 5px 0 #dff0f4}
.home .sample-tile img{object-fit:contain;background:white;border-radius:12px}
.home .sample-tile>p:last-child{font-weight:700}
.home .cf-home-video{background:#e8f3f6;border-radius:26px;padding:36px;margin-bottom:44px}
.home .cf-home-video video{width:100%;height:auto;border-radius:16px}
.home .toolbox{background:#fff1bf;padding:38px;border-radius:28px}
.home .toolbox-links>.wp-block-group{border-color:#dac47b}
.home .planning{background:var(--blue);border:2px solid #b8dce5;border-radius:24px}
.home .faq-teaser{background:white;padding:30px;border-radius:22px;border:1px solid var(--line)}
.home .final-band{background:var(--teal);color:white;border-radius:30px 30px 0 0;margin-top:35px}
.home .final-band h2{color:white}
:is(.button,.wp-block-button__link,.wp-element-button){border-radius:999px;font-weight:750;padding:15px 25px}
footer{background:var(--blue)!important;color:var(--ink)!important;border-top:0!important;padding-top:0}
footer .cf-footer-invite{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:42px 0;border-bottom:2px dashed #a7cbd5;margin-bottom:32px}
.cf-footer-invite h2{font-size:clamp(30px,3vw,43px);margin:0 0 15px}
.cf-footer-invite p{margin-bottom:0;max-width:52ch}
.cf-footer-invite .eyebrow{color:var(--teal);margin:0 0 12px}
footer .footer-grid{padding-top:10px;gap:38px}
footer .footer-grid h2{color:var(--teal);font-size:15px;letter-spacing:.03em}
footer .footer-grid a{color:var(--ink);text-decoration-color:#94bac4}
footer .footer-grid a:hover{color:#963425;text-decoration:underline}
footer .footer-grid p{color:var(--ink);font-size:14px;line-height:2}
@media(max-width:1000px){.home .hero{gap:30px}.home .toolbox{padding:28px}footer .cf-footer-invite{flex-wrap:wrap}}
@media(max-width:700px){
 header .top{padding-block:16px}.cf-classroom-banner{font-size:11px}header .brand{padding:8px 12px}header .brand img{width:118px}
 .home .hero{padding-block:32px 45px;gap:30px}.home .hero h1{font-size:clamp(40px,10vw,58px)}.home .hero .lede{font-size:17px}.cf-teacher-note{font-size:12px;padding:8px 10px}
 .home .hero-art{padding:14px 20px 30px}.home .step{display:block;padding:24px}.home .step-number{margin-bottom:20px}.home .step p{margin-bottom:0}.home .step h3{margin-bottom:16px}
 .home .cf-home-video{padding:22px}.home .toolbox{padding:24px}.home .faq-teaser{padding:24px}.home .section-heading{gap:18px}.home .memory-sticker{width:108px;height:108px}
 footer .cf-footer-invite{display:block;padding-block:32px}.cf-footer-invite .wp-block-buttons{margin-top:24px}.cf-footer-invite h2{font-size:33px}
}
/* Compact teacher-friendly footer: real lists prevent duplicate line-break spacing. */
.cf-footer-v2{padding:0 0 22px!important;background:#e4f2f8!important}
.cf-footer-v2 .cf-footer-invite{padding-block:30px;margin-bottom:0}
.cf-footer-v2 .cf-footer-invite h2{font-size:clamp(28px,2.6vw,38px)}
.cf-footer-main{display:grid;grid-template-columns:minmax(180px,.85fr) minmax(360px,1.65fr) minmax(240px,1fr);gap:36px;align-items:start;padding-block:36px}
.cf-footer-resource-columns{display:grid;grid-template-columns:1fr 1.15fr;gap:24px}
.cf-footer-v2 .cf-footer-main h2{font-size:15px;line-height:1.4;letter-spacing:0;text-transform:none;color:var(--teal);margin:0 0 16px}
.cf-footer-v2 .cf-footer-logo{margin:0 0 18px;background:white;border-radius:14px;padding:14px;width:160px}
.cf-footer-v2 .cf-footer-logo img{width:132px;height:auto;margin:0}
.cf-footer-v2 p{font-size:13px;line-height:1.7;margin:0 0 12px;color:var(--ink)}
.cf-footer-tag{display:inline-block;background:var(--sunshine);padding:6px 10px;border-radius:8px;font-weight:700;font-size:11px}
.cf-footer-v2 .cf-footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}
.cf-footer-v2 .cf-footer-links li{margin:0;padding:0;font-size:13px;line-height:1.5}
.cf-footer-v2 a{color:var(--ink);text-decoration:none}
.cf-footer-v2 .cf-footer-links a{display:inline-block;padding:6px 0;margin:0}
.cf-footer-v2 a:hover{text-decoration:underline;color:#963425}
.cf-footer-contact{background:#fffefa;border:1px solid #c9dde0;border-radius:18px;padding:22px;box-shadow:0 5px 0 #c8e3e8}
.cf-footer-v2 .cf-footer-contact h2{font-size:18px}
.cf-footer-contact a{overflow-wrap:anywhere}
.cf-footer-contact-link{font-weight:750}
.cf-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #bbd6dd;padding-top:18px}
.cf-footer-v2 .cf-footer-bottom p{margin:0;font-size:11px}
.cf-footer-v2 .cf-footer-bottom .cf-footer-links{flex-direction:row;flex-wrap:wrap;gap:20px}
.cf-footer-bottom .cf-footer-links li{font-size:12px}
@media(max-width:1100px){.cf-footer-main{grid-template-columns:1fr 1.6fr;gap:28px}.cf-footer-contact{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}.cf-footer-contact h2{grid-column:1/-1}}
@media(max-width:600px){.cf-footer-main{grid-template-columns:minmax(0,1fr);padding-block:28px;gap:28px}.cf-footer-resource-columns{gap:20px;grid-template-columns:1fr 1fr}.cf-footer-contact{display:block}.cf-footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}.cf-footer-v2 .cf-footer-bottom .cf-footer-links{gap:18px}.cf-footer-v2 .cf-footer-invite{padding-block:26px}}
.cf-footer-v2 .wp-block-button__link,.cf-footer-v2 .wp-block-button__link:hover{color:#fff;text-decoration:none}

/* Logos sit directly on the header/footer backgrounds. */
header .brand,.cf-footer-v2 .cf-footer-logo{background:transparent;box-shadow:none;border:0;border-radius:0;padding:0}
/* Prominent owner-editable updates, with no rotating or auto-hidden notices. */
.cf-updates{margin-block:22px 32px;padding:20px;background:#e4f2f8;border:1px solid #c9dde0;border-radius:20px}
.cf-updates-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.cf-updates-heading h2{font:800 22px/1.2 "Trebuchet MS",system-ui,sans-serif;letter-spacing:-.025em;margin:0;color:var(--ink)}
.cf-updates-heading>span{font-size:12px;color:var(--muted)}
.cf-updates-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cf-update{min-width:0;background:#fffefa;border:1px solid #c9dde0;border-radius:12px;padding:17px}
.cf-update h3{font:750 16px/1.4 "Trebuchet MS",system-ui,sans-serif;letter-spacing:0;margin:0 0 8px;color:var(--ink)}
.cf-update p{font-size:13px;line-height:1.6;margin:0 0 10px}
.cf-update p:last-child{margin:0}
.cf-update-featured{grid-column:1/-1;background:#fff1bf;border-color:#dfc674;border-left:5px solid #126b70}
.cf-update a{display:inline-block;font-size:12px;font-weight:700;line-height:1.5;padding-block:5px}
.cf-update details{padding:0;border:0;background:transparent;margin:8px 0}
.cf-update details summary{font-size:12px;line-height:1.5;min-height:32px;padding-block:5px;cursor:pointer}
.cf-update details p{padding-top:10px}
@media(max-width:700px){.cf-updates{padding:16px;margin-block:16px 24px}.cf-updates-heading{align-items:flex-start;flex-direction:column;gap:5px}.cf-updates-grid{grid-template-columns:minmax(0,1fr)}.cf-update{padding:16px}.cf-update-featured{grid-column:auto}}
/* Home updates follow the hero; inner-page updates use a quiet side column. */
.cf-inner-notice-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 290px;gap:0 32px;align-items:start;width:min(1220px,calc(100% - 80px));max-width:1220px!important;margin-inline:auto!important}
.cf-inner-notice-layout>.wp-block-post-title{grid-column:1/-1;width:100%;max-width:100%;margin-inline:0}
.cf-inner-notice-layout>.wp-block-post-content{width:100%;max-width:100%;min-width:0;margin:0!important}
.cf-inner-notice-layout>.wp-block-post-content>.shell{width:100%;max-width:100%}
.cf-notice-sidebar{min-width:0;max-width:100%!important;margin:0 0 40px!important}
.cf-notice-sidebar .cf-updates{width:100%;max-width:100%;margin:0;padding:16px;border-radius:16px}
.cf-notice-sidebar .cf-updates-heading{display:block}
.cf-notice-sidebar .cf-updates-heading h2{font-size:20px;margin-bottom:6px}
.cf-notice-sidebar .cf-updates-grid{grid-template-columns:minmax(0,1fr)}
.cf-notice-sidebar .cf-update-featured{grid-column:auto}
.cf-notice-sidebar .cf-update{padding:14px}
@media(max-width:1000px){.cf-inner-notice-layout{grid-template-columns:minmax(0,1fr);width:calc(100% - 48px)}.cf-notice-sidebar{margin-top:30px!important}.cf-notice-sidebar .cf-updates-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cf-notice-sidebar .cf-update-featured{grid-column:1/-1}}
@media(max-width:700px){.cf-inner-notice-layout{width:calc(100% - 36px)}.cf-notice-sidebar .cf-updates-grid{grid-template-columns:minmax(0,1fr)}.cf-notice-sidebar .cf-update-featured{grid-column:auto}}
.home .hero-art>.art-label{position:relative;transform:none;line-height:1.6;padding-bottom:24px;margin-bottom:16px!important;font-size:11px;overflow-wrap:anywhere}
.home .hero-art>.art-label>p{margin:0!important}

/* Owner-managed homepage announcements and teacher benefit. */
.cf-notice-topbar{background:#174d54;color:#fff;padding:12px 0;text-align:center}
.cf-notice-topbar h2{display:inline;font:700 15px/1.6 system-ui,sans-serif;color:inherit;margin:0 10px 0 0}
.cf-notice-topbar p{display:inline;margin:0;font-size:14px;line-height:1.6}
.cf-notice-topbar a{margin:8px}
.cf-notice-benefit{background:#f8d66d;color:#173f48;margin:24px auto;padding:30px 0;border-block:2px solid #eac34d}
.cf-notice-benefit>.shell{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.cf-notice-benefit h2{font:700 clamp(25px,3vw,38px)/1.2 "Trebuchet MS",sans-serif;margin:0;color:inherit}
.cf-notice-benefit p{flex:1 1 320px;margin:0;font-size:17px;line-height:1.6}
.cf-notice-benefit a{background:#173f48;color:#fff;white-space:normal}
.home .cf-updates-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:700px){.home .cf-updates-grid{grid-template-columns:1fr}.cf-notice-benefit>.shell{display:block}.cf-notice-benefit p{margin:14px 0 20px}.cf-notice-topbar h2{display:block}}

/* Turnaround stays at the top until explicitly dismissed. */
.cf-notice-topbar{position:sticky;top:0;z-index:9999;box-shadow:0 5px 18px #173f4830;animation:cf-notice-drop .3s ease-out}
.admin-bar .cf-notice-topbar{top:32px}
.cf-notice-topbar>.shell{position:relative;padding-right:90px}
.cf-notice-dismiss{position:absolute;right:0;top:50%;transform:translateY(-50%);min-height:44px;min-width:78px;border:1px solid #ffffff80;border-radius:8px;background:transparent;color:#fff;font:700 14px system-ui;cursor:pointer;padding:8px}
.cf-notice-dismiss:hover{background:#ffffff26}
.cf-notice-topbar[hidden]{display:none!important}
@keyframes cf-notice-drop{from{transform:translateY(-100%)}to{transform:translateY(0)}}
@media(max-width:782px){.admin-bar .cf-notice-topbar{top:46px}}
@media(max-width:600px){.admin-bar .cf-notice-topbar{top:0}.cf-notice-topbar>.shell{padding-right:76px}.cf-notice-dismiss{min-width:68px}}
@media(prefers-reduced-motion:reduce){.cf-notice-topbar{animation:none}}

.cf-directions>p{margin-bottom:16px!important}
.cf-directions-steps{margin-top:26px}
.cf-direction-step{padding:22px 24px;margin:0 0 16px!important;border:1px solid #d4e3e2;border-left:5px solid #238c9d;border-radius:12px;background:#fffefa}
.cf-direction-step h3{font:800 23px/1.25 "Trebuchet MS",system-ui,sans-serif;margin:0 0 12px!important;color:#174d54}
.cf-direction-step p{margin:0 0 12px!important;line-height:1.65}
.cf-direction-step p:last-child{margin-bottom:0!important}
.cf-direction-step figure{margin:16px 0 0!important}
.cf-direction-step img{max-width:100%;height:auto}
@media(max-width:700px){.cf-direction-step{padding:18px}.cf-direction-step h3{font-size:21px}}
.cf-process-video{margin-top:18px}
.cf-process-dialog{width:min(940px,calc(100vw - 32px));max-height:90vh;padding:20px;border:0;border-radius:16px;background:#fffaf0;color:#173f48;box-shadow:0 20px 80px #0006}
.cf-process-dialog::backdrop{background:#102c36cc}
.cf-process-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.cf-process-dialog-heading h2{font-size:clamp(20px,3vw,30px);margin:0!important}
.cf-process-dialog-heading button{min-width:80px;min-height:44px;border:1px solid #174d54;border-radius:8px;background:white;color:#174d54;cursor:pointer;font-weight:700}
.cf-process-dialog video{display:block;width:100%;max-height:70vh;background:#173f48;border-radius:8px}
.home .ribbon .shell{font-size:18px;font-weight:700;line-height:1.4;gap:18px 24px}
.home .ribbon .shell>p{font-size:inherit;margin:0}
@media(max-width:700px){.home .ribbon .shell{font-size:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));text-align:center;gap:16px}.home .ribbon .art-flower,.home .ribbon .shell>p:nth-child(even){display:none}}
.home .section:has(.steps-grid) .section-heading .eyebrow{font-size:18px;line-height:1.5;letter-spacing:.06em;font-weight:800}
.home .hero .hero-note{font-size:18px;line-height:1.55;font-weight:600}
@media(max-width:700px){.home .section:has(.steps-grid) .section-heading .eyebrow,.home .hero .hero-note{font-size:16px}}
/* Mobile review: keep menu beside logo and make resource labels readable. */
@media(max-width:700px){
 header .top{flex-wrap:nowrap!important;align-items:center;gap:16px}
 header .top>.wp-block-navigation{width:auto!important;flex:0 0 auto;margin-left:auto}
 .download-card small{font-size:11px}
 .download-card>span>span,.template-download>p,.template-download>span{font-size:13px}
 .download-card strong,.template-download strong{font-size:14px}
 .download-section{padding:16px}
 .cf-inner-notice-layout input:not([type="checkbox"]):not([type="hidden"]),.cf-inner-notice-layout textarea,.cf-inner-notice-layout select{font-size:16px;max-width:100%;min-width:0}
}
.cf-order-forms>p{font-size:17px;line-height:1.7}
.cf-order-options{background:#e4f1f2;padding:14px 18px;border-radius:12px;margin:20px 0 28px!important}
.cf-order-options p{margin:0!important;line-height:2}
.cf-order-section{padding:24px;background:#fffefa;border:1px solid #d4e3e2;border-radius:16px;margin:0 0 24px!important;scroll-margin-top:60px}
.cf-order-section h2{font-size:29px;margin:0 0 12px!important}
.cf-order-section>p{margin-bottom:18px!important}
.cf-order-forms .cf-order-downloads{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cf-order-forms .cf-order-file{margin:0!important;background:#f5f8f5}
.cf-order-file p{margin:0!important}
.cf-order-file strong{font-size:15px;line-height:1.4}
.cf-order-file .cf-file-badge{display:flex;align-items:center;justify-content:center;width:60px;height:80px;background:#dceee3;border-radius:8px;font-size:16px;font-weight:800;color:#175b3a}
.cf-order-help{padding:22px;background:#e4f1f2;border-radius:16px;margin-top:28px!important}
.cf-order-help h2{font-size:26px;margin-top:0!important}
@media(max-width:700px){.cf-order-section{padding:16px}.cf-order-section h2{font-size:25px}.cf-order-forms .cf-order-downloads{grid-template-columns:1fr}.cf-order-help{padding:18px}}
.cf-pricing .wp-block-table{margin:18px 0 20px;overflow-x:auto}
.cf-pricing table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5}
.cf-pricing th,.cf-pricing td{padding:14px 16px;text-align:left;border:1px solid #d4e3e2;vertical-align:top;overflow-wrap:anywhere}
.cf-pricing th{background:#174d54;color:#fff;font-weight:700}
.cf-pricing tbody tr:nth-child(even){background:#edf5f4}
.cf-pricing td:last-child{font-weight:700}
@media(max-width:700px){.cf-pricing table{font-size:14px}.cf-pricing th,.cf-pricing td{padding:10px 9px}}
.cf-pricing .wp-block-table{width:100%!important;max-width:100%}.cf-pricing .wp-block-table table{width:100%!important;table-layout:fixed}
.cf-shirt-colors>.cf-order-help{margin-bottom:22px!important}
.cf-color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0!important;align-items:start}
.cf-color-card{min-width:0;padding:16px;background:#fffefa;border:1px solid #d4e3e2;border-radius:14px;margin:0!important;transition:box-shadow .15s ease,border-color .15s ease}
.cf-color-card:hover,.cf-color-card:focus-within{border-color:#238c9d;box-shadow:0 5px 18px #173f4818}
.cf-color-card figure{margin:0 0 12px!important;width:100%}
.cf-color-card img{display:block;width:100%;height:180px;object-fit:contain;border-radius:8px}
.cf-color-card h3{font:800 21px/1.3 "Trebuchet MS",system-ui,sans-serif;margin:0 0 10px!important;text-align:center}
.cf-ink-details{margin:0!important;font-size:14px}
.cf-ink-details summary{padding:11px 8px;min-height:44px;cursor:pointer;background:#e4f1f2;border-radius:8px;font-weight:700;font-size:14px;line-height:1.5}
.cf-ink-details ul{margin:12px 0 0!important;padding-left:22px;line-height:1.6}
.cf-ink-details li{font-size:14px;margin:2px 0}
@media(max-width:1000px){.cf-color-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.cf-color-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cf-color-card{padding:12px}.cf-color-card img{height:150px}.cf-color-card h3{font-size:19px}}
@media(max-width:380px){.cf-color-grid{grid-template-columns:minmax(0,1fr)}.cf-color-card img{height:190px}}
@media(prefers-reduced-motion:reduce){.cf-color-card{transition:none}}
@media(max-width:700px){.cf-ink-details summary{font-size:16px;line-height:1.4;padding:12px 8px;min-height:48px}.cf-ink-details li{font-size:16px;line-height:1.6;margin:4px 0;overflow-wrap:normal}.cf-ink-details ul{padding-left:20px}}
.cf-sample-jumps{padding:14px 18px;background:#e4f1f2;border-radius:12px;margin:20px 0 28px!important}.cf-sample-jumps p{margin:0!important;line-height:2}
.cf-sample-section{margin:30px 0!important;scroll-margin-top:60px}.cf-sample-section h2{font-size:30px;margin:0 0 18px!important}
.cf-samples-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.cf-sample-card{margin:0!important;padding:10px;background:#fffefa;border:1px solid #d4e3e2;border-radius:14px;min-width:0}
.cf-sample-card figure{margin:0!important}.cf-sample-card img{display:block;width:100%;height:230px;object-fit:contain;border-radius:8px;background:white}
.cf-sample-card p{font-size:15px;font-weight:700;line-height:1.4;margin:12px 2px 2px!important;text-align:center}
.cf-sample-viewer{width:min(1000px,calc(100vw - 24px));max-height:94vh;padding:16px;background:#fffaf0;border:0;border-radius:14px;color:#173f48}.cf-sample-viewer::backdrop{background:#102c36dd}
.cf-viewer-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}.cf-viewer-controls button{min-height:44px;padding:8px 12px;border:1px solid #174d54;border-radius:8px;background:#e4f1f2;color:#173f48;font:700 14px system-ui;cursor:pointer}
.cf-sample-viewer figure{margin:0}.cf-sample-viewer img{display:block;max-width:100%;max-height:72vh;width:auto;margin:auto;object-fit:contain}.cf-sample-viewer figcaption{text-align:center;font-weight:700;margin:12px 0 0;line-height:1.4}
@media(max-width:700px){.cf-samples-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cf-sample-card img{height:190px}.cf-sample-card p{font-size:14px}.cf-sample-section h2{font-size:26px}}
@media(max-width:380px){.cf-samples-grid{grid-template-columns:minmax(0,1fr)}.cf-sample-card img{height:260px}.cf-sample-viewer{padding:12px}.cf-viewer-controls button{padding:8px}.cf-viewer-controls{justify-content:center}}
.cf-color-card figure{position:relative}
.cf-ink-overlay{position:absolute;left:50%;top:32%;height:32%;aspect-ratio:1;transform:translateX(-50%);pointer-events:none;background:#171717;-webkit-mask:url('class-shirt-ink-mask.svg') center/contain no-repeat;mask:url('class-shirt-ink-mask.svg') center/contain no-repeat;mask-mode:alpha}
.cf-ink-picker{display:block;font-size:14px;font-weight:700;line-height:1.4;margin:0 0 14px}
.cf-ink-picker select{display:block;width:100%;max-width:100%;font:16px/1.4 system-ui,sans-serif;padding:10px 8px;min-height:44px;border:1px solid #9dbfc3;border-radius:8px;background:#fff;color:#173f48;margin-top:6px}
.cf-color-card img{height:260px}
@media(max-width:700px){.cf-color-card img{height:230px}}
/* Separate page callouts and notices from the shared footer. */
.wp-site-blocks>footer{margin-top:48px!important}
@media(max-width:700px){.wp-site-blocks>footer{margin-top:32px!important}}
/* Full-artwork padding and an accessible larger shirt preview. */
.cf-ink-overlay{-webkit-mask-image:url('class-shirt-ink-mask.svg?v=2');mask-image:url('class-shirt-ink-mask.svg?v=2')}
.cf-color-card figure{padding-bottom:38px}
.cf-color-card figure .cf-ink-overlay{height:calc((100% - 38px)*.32);top:calc((100% - 38px)*.32)}
.cf-color-card figure img{cursor:zoom-in}
.cf-shirt-zoom{position:absolute;left:0;right:0;bottom:0;width:100%;min-height:38px;border:0;border-radius:7px;background:#e4f1f2;color:#173f48;font:700 13px system-ui;cursor:zoom-in}
.cf-shirt-preview-dialog{width:min(900px,calc(100vw - 24px));max-height:95vh;padding:20px;border:0;border-radius:16px;background:#fffaf0;color:#173f48}
.cf-shirt-preview-dialog::backdrop{background:#102c36dd}
.cf-shirt-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.cf-shirt-preview-heading h2{margin:0;font-size:28px}
.cf-shirt-preview-heading button{min-height:44px;min-width:80px;background:white;color:#173f48;border:1px solid #174d54;border-radius:8px;font-weight:700;cursor:pointer}
.cf-shirt-preview-stage figure{position:relative;height:min(70vh,700px);margin:0}
.cf-shirt-preview-stage img{display:block;width:100%;height:100%;object-fit:contain}
.cf-shirt-preview-stage .cf-ink-overlay{top:32%;height:32%}
.cf-shirt-preview-description{margin:14px 0 0;text-align:center;font-size:16px;font-weight:700}
@media(max-width:700px){.cf-shirt-preview-dialog{padding:14px}.cf-shirt-preview-heading h2{font-size:23px}.cf-shirt-preview-stage figure{height:64vh}.cf-shirt-zoom{min-height:44px}.cf-color-card figure{padding-bottom:44px}.cf-color-card figure .cf-ink-overlay{height:calc((100% - 44px)*.32);top:calc((100% - 44px)*.32)}}
.cf-form-step{padding:18px;background:#edf5f4;border-radius:12px;margin:20px 0 0!important}
.cf-form-step h3{font-size:22px;line-height:1.35;margin:0 0 14px!important}
.cf-form-step>p{margin:0 0 16px!important}
@media(max-width:700px){.cf-form-step{padding:14px}.cf-form-step h3{font-size:20px}}

.cf-ink-overlay{top:27%}.cf-color-card figure .cf-ink-overlay{top:calc((100% - 38px)*.27)}.cf-shirt-preview-stage .cf-ink-overlay{top:27%}
@media(max-width:700px){.cf-color-card figure .cf-ink-overlay{top:calc((100% - 44px)*.27)}}
.cf-resource-hub{padding-top:20px}
.cf-resource-buttons{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important;margin:28px 0!important}
.cf-resource-buttons .wp-block-button{width:100%}
.cf-resource-buttons .wp-block-button__link{display:flex;align-items:center;justify-content:center;width:100%;min-height:64px;padding:18px 20px;font-size:17px;line-height:1.4;text-align:center;white-space:normal}
@media(max-width:700px){.cf-resource-buttons{grid-template-columns:1fr;gap:12px!important}.cf-resource-buttons .wp-block-button__link{min-height:56px;font-size:16px}}
/* Distinguish the time-sensitive notice from the teal brand banner. */
.cf-notice-topbar{background:#ffe08a;color:#173f48;border-bottom:3px solid #b44329}
.cf-notice-topbar h2{color:#173f48}
.cf-notice-dismiss{background:#a63725;color:#fff;border-color:#a63725}
.cf-notice-dismiss:hover{background:#81291c;border-color:#81291c}
.cf-notice-dismiss:focus-visible{outline:3px solid #173f48;outline-offset:3px}
.home .hero-copy>.eyebrow{font-size:20px;line-height:1.45;letter-spacing:.055em;font-weight:800}
@media(max-width:700px){.home .hero-copy>.eyebrow{font-size:18px}}
.cf-home-toolbox{display:block;padding-block:48px}
.cf-toolbox-intro{max-width:760px;margin-bottom:28px!important}
.cf-toolbox-intro h2{margin-bottom:16px!important}
.cf-toolbox-intro>p{margin-bottom:16px!important}
.cf-toolbox-intro .wp-block-button__link{background:#174d54;color:white;font-size:15px;padding:12px 20px}
.cf-toolbox-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cf-toolbox-card{padding:24px;background:#fffefa;border:1px solid #e4d299;border-radius:16px;display:flex;flex-direction:column;align-items:flex-start;margin:0!important}
.cf-toolbox-card h3{font-size:25px;margin:0 0 12px!important}
.cf-toolbox-card>p{font-size:16px;line-height:1.6;margin:0 0 22px!important;flex:1}
.cf-toolbox-card .wp-block-buttons{margin-top:auto}
.cf-toolbox-card .wp-block-button__link{font-size:16px;line-height:1.4;padding:13px 20px;white-space:normal}
@media(max-width:700px){.cf-home-toolbox{padding-block:36px}.cf-toolbox-cards{grid-template-columns:1fr;gap:14px}.cf-toolbox-card{padding:22px}.cf-toolbox-card h3{font-size:24px}.cf-toolbox-card .wp-block-buttons,.cf-toolbox-card .wp-block-button{width:100%}.cf-toolbox-card .wp-block-button__link{width:100%}}
header .brand img{width:174px;max-height:86.4px}
.cf-footer-v2 .cf-footer-logo{width:192px}
.cf-footer-v2 .cf-footer-logo img{width:158.4px}
@media(max-width:700px){header .brand img{width:141.6px;max-height:66px}}
/* Give the homepage notice a visible one-time entrance. */
.cf-notice-topbar{animation:cf-turnaround-arrive .95s cubic-bezier(.22,.61,.36,1) .25s both}
@keyframes cf-turnaround-arrive{from{transform:translateY(-120%);opacity:0}to{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.cf-notice-topbar{animation:none!important}}

/* Handprint page: compact sections, separated actions and a balanced sample. */
.page-id-11 .wp-block-post-content>.section{padding-block:24px 28px}
.page-id-11 .wp-block-post-content .wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px 18px;margin-block:24px 0}
.page-id-11 .wp-block-post-content .wp-block-buttons>.wp-block-button{margin:0}
.page-id-11 .wp-block-post-content .page-body{width:100%;max-width:none;padding-block:0 12px;margin-top:0}
.page-id-11 .legacy-content>p{margin-block:0 18px}
.page-id-11 .legacy-content>.wp-block-image{max-width:460px;margin:24px auto}
.page-id-11 .legacy-content>.wp-block-image img{display:block;width:100%;height:auto;object-fit:contain}
.page-id-11 .wp-block-post-content .page-cta{margin-top:28px;padding:24px}
.page-id-11 .wp-block-post-content .page-cta h2{margin:0 0 16px;font-size:clamp(25px,2.3vw,34px)}
.page-id-11 .wp-block-post-content .section h2{margin-top:0;font-size:clamp(27px,2.6vw,38px);line-height:1.2}
@media(max-width:600px){.page-id-11 .wp-block-post-content>.section{padding-block:14px 24px}.page-id-11 .wp-block-post-content .wp-block-buttons{gap:12px}.page-id-11 .wp-block-post-content .wp-block-buttons>.wp-block-button{width:100%}.page-id-11 .wp-block-post-content .wp-block-button__link{width:100%;text-align:center}.page-id-11 .wp-block-post-content .page-cta{padding:20px}}

.page-id-11 .wp-block-post-title{margin-bottom:24px!important}

/* Teacher resource hub: consistent compact sections and button grids. */
.page-id-34 .wp-block-post-content>.section{padding:24px!important;margin-block:0 24px!important;background:#fffdf5;border:1px solid #e4d9bc;border-radius:18px}
.page-id-34 .wp-block-post-content>.section h2{font-size:clamp(26px,2.4vw,34px);line-height:1.2;margin:0 0 14px!important}
.page-id-34 .wp-block-post-content>.section>p{max-width:none;margin:0 0 20px!important;font-size:17px;line-height:1.6}
.page-id-34 .wp-block-post-content .wp-block-buttons{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important;margin:0!important;align-items:stretch}
.page-id-34 .wp-block-post-content .wp-block-buttons>.wp-block-button{width:100%!important;margin:0!important;display:flex}
.page-id-34 .wp-block-post-content .wp-block-button__link{width:100%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:16px;line-height:1.4;min-height:52px;padding:13px 16px;border-radius:12px}
.page-id-34 .wp-block-post-content>.section:nth-of-type(2) .wp-block-button__link{background:#174d54;color:#fff}
.page-id-34 .wp-block-post-content>.section:nth-of-type(2) .wp-block-button__link:hover{background:#103b40}
.page-id-34 .wp-block-post-content>.section:nth-of-type(2) .wp-block-button:first-child{grid-column:auto}
.page-id-34 .wp-block-post-content>p{margin:16px 0 24px!important}
@media(max-width:600px){.page-id-34 .wp-block-post-content>.section{padding:20px!important;margin-bottom:20px!important}.page-id-34 .wp-block-post-content .wp-block-buttons{grid-template-columns:1fr;gap:12px!important}}

/* Retirement guide uses the same editable landing-page components. */
.cf-retirement-landing{padding-top:24px!important}
.cf-retirement-landing .cf-landing-sample-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.cf-retirement-landing .cf-landing-sample-grid img{height:260px;object-fit:contain}
.cf-retirement-landing .page-cta{margin-top:28px;padding:24px}
@media(max-width:600px){.cf-retirement-landing .cf-landing-sample-grid{grid-template-columns:1fr}.cf-retirement-landing .wp-block-buttons>.wp-block-button{width:100%}.cf-retirement-landing .wp-block-button__link{width:100%}}

/* Clear design comparisons and short planning answers, built with native blocks. */
.cf-decision-panel,.cf-shopping-facts,.cf-project-answers,.cf-mailing-checklist{margin-block:28px!important;padding:24px;background:#edf7f8;border:1px solid #c4dfe2;border-radius:16px}
.wp-block-post-content :is(.cf-decision-panel,.cf-shopping-facts,.cf-project-answers,.cf-mailing-checklist)>h2{margin:0 0 16px;font-size:clamp(26px,2.4vw,34px);line-height:1.2}
.cf-decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cf-decision-card{display:flex;flex-direction:column;align-items:stretch;padding:20px;background:#fffdf5;border-radius:12px;border:1px solid #e4d9bc;margin:0!important;min-width:0}
.wp-block-post-content .cf-decision-card h3,.wp-block-post-content .cf-fact-card h3{font-size:23px;line-height:1.2;margin:0 0 12px}
.cf-decision-card>p{flex:1}.cf-search-landing .cf-decision-card .wp-block-buttons{margin:8px 0 0}
.cf-decision-card .wp-block-button,.cf-decision-card .wp-block-button__link{width:100%}
.cf-decision-card .wp-block-button__link{font-size:15px;line-height:1.4;padding:12px 14px;text-align:center;white-space:normal;min-height:48px}
.cf-fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cf-fact-card{margin:0!important;min-width:0}.cf-fact-card p{font-size:16px;line-height:1.6;margin-bottom:0!important}
.cf-project-answers details{border-bottom:1px solid #b5d4d8;padding:14px 0;margin:0}
.cf-project-answers summary{cursor:pointer;font-size:18px;font-weight:700;line-height:1.5;min-height:44px;display:list-item}
.cf-project-answers details p{margin:14px 0 6px!important;font-size:16px;line-height:1.7}
.cf-mailing-checklist li{margin-bottom:14px;line-height:1.7}.cf-mailing-checklist .wp-block-buttons{margin-top:20px}
@media(max-width:700px){.cf-decision-grid,.cf-fact-grid{grid-template-columns:1fr}.cf-decision-panel,.cf-shopping-facts,.cf-project-answers,.cf-mailing-checklist{padding:20px;margin-block:24px!important}.cf-fact-card+.cf-fact-card{border-top:1px solid #c4dfe2;padding-top:16px}.cf-project-answers summary{font-size:17px}}

/* Shared contact strip: desktop contact details and compact phone links. */
.cf-contact-banner{background:var(--teal);color:#fff;margin:0!important;padding:0}
.cf-contact-banner-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;margin-block:0!important;padding-block:2px}
.cf-contact-banner-inner>p{margin:0!important;font:700 14px/1.5 system-ui,sans-serif}
.cf-contact-banner .cf-banner-message{text-align:center;font-size:12px;letter-spacing:.02em}
.cf-contact-banner a{color:#fff;display:inline-flex;align-items:center;min-height:44px;text-decoration:none;white-space:nowrap}
.cf-contact-banner a:hover{text-decoration:underline;text-underline-offset:4px}
.cf-contact-banner a:focus-visible{outline:3px solid #ffe08a;outline-offset:2px;border-radius:3px}
.cf-banner-email{text-align:right}.cf-banner-email-short{display:none}
@media(max-width:1100px){.cf-contact-banner-inner{grid-template-columns:1fr 1fr}.cf-contact-banner .cf-banner-message{display:none}}
@media(max-width:700px){.cf-contact-banner-inner{gap:14px;padding-block:0}.cf-banner-email-full{display:none}.cf-banner-email-short{display:inline}.cf-contact-banner-inner>p{font-size:14px}}

/* Occasion guides keep distinct decisions readable in native blocks. */
.cf-distinct-occasion{padding-top:24px!important}
.cf-distinct-occasion>.lede{font-size:18px;line-height:1.7;max-width:760px}
.cf-occasion-section{margin-block:28px!important}
.wp-block-post-content .cf-occasion-section>h2{margin:0 0 16px!important;font-size:clamp(26px,2.5vw,35px);line-height:1.25}
.cf-occasion-section li{margin-bottom:12px;line-height:1.7}
.cf-occasion-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cf-occasion-choice{margin:0!important;padding:22px;border:1px solid #c4dfe2;border-radius:14px;background:#edf7f8;min-width:0}
.wp-block-post-content .cf-occasion-choice h3{font-size:23px;line-height:1.25;margin:0 0 12px}
.cf-occasion-choice p:last-child{margin-bottom:0!important}
.cf-occasion-choice .wp-block-button__link{font-size:15px;white-space:normal;text-align:center}
.cf-occasion-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.cf-distinct-occasion .cf-landing-sample-grid figcaption{font-size:15px;line-height:1.6;padding:14px}
.cf-distinct-occasion .page-cta{padding:24px;margin-top:28px}
.cf-occasion-related{border-top:1px solid #c4dfe2;padding-top:22px;margin-top:28px!important}
.wp-block-post-content .cf-occasion-related h2{font-size:23px;margin:0 0 14px}
.cf-occasion-related p{line-height:2}
@media(max-width:700px){.cf-occasion-choice-grid,.cf-occasion-pair{grid-template-columns:1fr}.cf-occasion-choice{padding:20px}.cf-distinct-occasion .wp-block-buttons>.wp-block-button{width:100%}.cf-distinct-occasion .wp-block-button__link{width:100%;text-align:center}.cf-distinct-occasion .cf-landing-samples{padding:20px}.cf-distinct-occasion .page-cta{padding:20px}}

/* Discoverable occasion pages without lengthening the main footer columns. */
.cf-footer-occasions{padding-block:24px;border-top:1px dashed #a4cbd2}
.cf-footer-v2 .cf-footer-occasions h2{margin:0 0 14px;font-size:20px;line-height:1.3;color:var(--teal)}
.cf-footer-v2 .cf-footer-occasion-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 24px}
.cf-footer-v2 .cf-footer-occasion-links li{font-size:14px;min-width:0}
.cf-footer-v2 .cf-footer-occasion-links a{min-height:44px;display:flex;align-items:center;line-height:1.5;padding:8px 0}
@media(max-width:900px){.cf-footer-v2 .cf-footer-occasion-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}}

/* Partner application: clear labels, roomy responses and compact mobile reflow. */
.cf-partner-form{margin-block:28px;padding:28px;background:#fffdf5;border:1px solid #c4dfe2;border-radius:18px;max-width:850px}
.wp-block-post-content .cf-partner-form h2{font-size:clamp(26px,2.6vw,36px);line-height:1.2;margin:0 0 16px}
.cf-partner-form .cf-form-intro{margin:0 0 16px;font-size:17px;line-height:1.6}
.cf-partner-form .cf-form-privacy{padding:16px;background:#edf7f8;border-radius:12px;font-size:15px;line-height:1.6;margin:0 0 24px}
.cf-partner-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}
.cf-partner-field{grid-column:1/-1;min-width:0}.cf-partner-field-half{grid-column:auto}
.cf-partner-form .cf-partner-field label{display:block;font-weight:700;font-size:16px;line-height:1.5;margin:0 0 8px}
.cf-field-required{font-weight:400;font-size:13px}
.cf-partner-form .cf-partner-field :is(input,textarea){display:block;width:100%;max-width:100%;min-width:0;min-height:48px;margin:0;padding:12px 14px;background:#fff;color:#173f48;border:1px solid #789da3;border-radius:9px;font:400 16px/1.5 system-ui,sans-serif;box-sizing:border-box}
.cf-partner-form .cf-partner-field textarea{min-height:128px;resize:vertical}
.cf-partner-form .cf-partner-consent{margin:24px 0!important}
.cf-partner-consent label{display:flex;align-items:flex-start;gap:12px;font-size:16px;line-height:1.6;min-height:44px;cursor:pointer}
.cf-partner-form .cf-partner-consent input{width:20px!important;height:20px;min-height:20px;flex:0 0 20px;margin:3px 0 0;accent-color:#174d54}
.cf-partner-form button[type="submit"]{min-height:50px;white-space:normal}
.cf-partner-form .cf-form-preview-note{margin:20px 0 0!important;font-size:14px;line-height:1.6;color:#465f65}
.cf-application-result{padding:18px 20px;border-left:4px solid #174d54;background:#edf7f8;border-radius:8px;font-weight:600}
@media(max-width:600px){.cf-partner-form{padding:20px;margin-block:24px}.cf-partner-fields{grid-template-columns:1fr;gap:20px}.cf-partner-field-half{grid-column:1/-1}.cf-partner-form button[type="submit"]{width:100%}}

/* Occasion shortcuts: editable buttons in their own section before the footer. */
.cf-occasion-band{background:#fff1be;padding:clamp(28px,4vw,48px) 0;margin:24px 0 0;border-top:1px dashed #d6bf72;border-bottom:1px dashed #d6bf72}
.cf-occasion-band h2{text-align:center;font-size:clamp(26px,3vw,34px);line-height:1.2;margin:0 0 24px;color:#174d54}
.cf-occasion-band .cf-occasion-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}
.cf-occasion-buttons .wp-block-button{width:100%;min-width:0}
.cf-occasion-band .cf-occasion-buttons .wp-element-button{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:60px;box-sizing:border-box;padding:14px 16px;border:2px solid #174d54;border-radius:12px;background:#fffdf7;color:#174d54;font-size:16px;font-weight:700;line-height:1.4;text-align:center;white-space:normal;text-decoration:none;box-shadow:none;transition:background .18s,color .18s,transform .18s}
.cf-occasion-band .cf-occasion-buttons .wp-element-button:hover{background:#174d54;color:#fff;transform:translateY(-2px)}
.cf-occasion-band .cf-occasion-buttons .wp-element-button:focus-visible{outline:3px solid #bd472f;outline-offset:4px;background:#174d54;color:#fff}
@media(max-width:900px){.cf-occasion-band .cf-occasion-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.cf-occasion-band .cf-occasion-buttons{gap:10px}.cf-occasion-band .cf-occasion-buttons .wp-element-button{font-size:14px;padding:12px 10px;min-height:64px}}
@media(prefers-reduced-motion:reduce){.cf-occasion-band .cf-occasion-buttons .wp-element-button{transition:none;transform:none}}

/* Keep the longer process-video heading compact on desktop. */
.home .cf-home-video h2{font-size:clamp(26px,3vw,38px);line-height:1.2}

/* Native captions stay readable in the smaller inline phone player. */
@media(max-width:600px){.cf-home-video video::cue,.cf-process-dialog video::cue{font-size:clamp(14px,4vw,18px)}}

/* Keep final invitation emphasis readable against the teal background. */
.home .final-band h2 em{color:inherit}

/* Review pass: menu context must sit above the dismissible notice. */
header:has(.wp-block-navigation__responsive-container.is-menu-open){position:relative;z-index:100001}
body:has(.wp-block-navigation__responsive-container.is-menu-open) .cf-notice-topbar{visibility:hidden;pointer-events:none}
.wp-block-navigation__responsive-container.is-menu-open{padding:24px;z-index:100002;overflow-y:auto}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{top:20px;right:20px;min-width:48px;min-height:48px}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:72px}
.top{padding-block:14px;gap:20px}.cf-contact-banner-inner{min-height:38px}
.cf-notice-topbar{padding:8px 0}.cf-notice-topbar>.shell{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px 12px;padding-right:80px}
.cf-notice-topbar h2{display:inline;margin:0;font-size:14px}.cf-notice-topbar p.cf-turnaround-compact{font-size:15px;font-weight:800}
.cf-turnaround-details{padding:0;border:0;margin:0;font-size:14px}.cf-turnaround-details summary{padding:4px 12px!important;min-height:36px;text-decoration:underline}.cf-turnaround-details summary:after{content:none!important}.cf-turnaround-details[open]{flex-basis:100%;order:4;text-align:left}.cf-turnaround-details[open] p{display:block;margin:8px 0;line-height:1.5}.cf-notice-dismiss{top:50%;transform:translateY(-50%)}
.home .hero{padding-block:24px 36px;gap:30px}.home .hero h1{font-size:clamp(38px,4.1vw,58px);margin-bottom:18px}.home .hero .lede{font-size:17px;line-height:1.55;margin-bottom:16px}.home .hero-copy>.eyebrow{font-size:13px;line-height:1.45;margin-bottom:12px;letter-spacing:.04em}.home .hero .actions{margin:16px 0;gap:12px 20px}.home .hero .hero-note{font-size:15px;margin:12px 0}.home .hero-art{padding:12px 18px 22px}.home .hero-art>.art-label{padding-bottom:10px;margin-bottom:8px!important;font-size:10px}
.cf-hero-facts{font-size:14px;line-height:1.7;margin:12px 0!important}.cf-hero-facts a{font-weight:700}
.cf-home-option-grid,.cf-quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.cf-home-option{padding:22px;border:1px solid #c5d6d7;border-radius:18px;background:#fffdf7}.cf-home-option figure{margin:0 0 16px}.cf-home-option img{width:100%;height:180px;object-fit:contain}.cf-home-option h3{font-size:24px}.cf-home-option p{font-size:16px}.cf-home-option .wp-block-buttons{margin-top:18px}.cf-home-option .wp-block-button{width:100%}.cf-home-option .wp-element-button{width:100%;font-size:14px;min-height:48px}
.cf-home-process{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.cf-home-process .shell{width:100%;max-width:none}.cf-home-process .section{padding:0}.home .cf-home-process .section-heading{display:block;margin-bottom:20px}.home .cf-home-process .steps-grid{display:block}.home .cf-home-process .step{display:grid;grid-template-columns:40px 1fr;padding:16px 0;gap:10px;border:0;border-bottom:1px solid #c5d6d7}.home .cf-home-process .step-number{grid-row:1/3;font-size:24px;margin:0}.home .cf-home-process .step h3{font-size:21px;margin:0}.home .cf-home-process .step p{font-size:15px;margin:0}.home .cf-home-process .cf-home-video{padding:24px;margin:0}.home .cf-home-process .cf-home-video h2{font-size:26px}.cf-teacher-quote{background:#fffdf7;border:1px solid #c5d6d7;border-radius:18px;padding:22px}.cf-teacher-quote blockquote{background:transparent;border:0;padding:0;margin:0;font-size:17px}.cf-teacher-quote cite{display:block;margin-top:16px;font-size:14px;font-weight:700}.home .cf-footer-invite{display:none}.home .cf-footer-main{padding-top:30px}.cf-current-estimate{background:#e4f1f2;border-radius:16px;padding:24px;margin-bottom:32px}.cf-faq-topics>h2{margin-top:42px;scroll-margin-top:100px}.cf-faq-topics>.wp-block-buttons{gap:10px;margin:22px 0}.cf-faq-topics .wp-element-button{font-size:14px}.cf-sample-section>.wp-block-buttons{margin:18px 0;gap:12px}
@media(max-width:850px){.cf-home-option-grid,.cf-quote-grid,.cf-home-process{grid-template-columns:1fr}.home .hero{gap:18px}.cf-home-option{display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:18px;padding:18px}.cf-home-option figure{grid-row:1/5;margin:0}.cf-home-option img{height:140px}.cf-home-option h3{font-size:22px;margin-bottom:8px}.cf-home-option p{margin-bottom:10px}.cf-home-option>.wp-block-buttons{grid-column:1/-1}.cf-home-process{gap:22px}.cf-quote-grid{gap:12px}.top{padding-block:10px}.home .hero h1{font-size:clamp(36px,8.3vw,48px)}}
@media(max-width:600px){.home .hero{display:grid;grid-template-columns:minmax(0,1fr) 116px;padding-block:18px 28px;gap:12px}.home .hero-copy{display:contents}.home .hero-copy>.eyebrow,.home .hero h1{grid-column:1/-1;margin-bottom:0}.home .hero-copy>.lede{grid-column:1;grid-row:3;font-size:15px;line-height:1.5;margin:0}.home .hero-art{grid-column:2;grid-row:3;padding:0;align-self:center}.home .hero-art>.art-label,.home .hero-art>.memory-sticker{display:none}.home .hero-art .photo-card{transform:rotate(2deg);padding:5px}.home .hero-art .photo-card img{aspect-ratio:1;object-fit:contain}.home .photo-card figcaption{font-size:11px;padding:8px 2px}.home .hero-copy>.actions,.home .hero-copy>.hero-note,.home .hero-copy>.cf-hero-facts{grid-column:1/-1}.home .hero .actions{margin:4px 0;gap:12px}.home .hero .hero-note{font-size:14px;margin:0}.home .hero .actions .wp-element-button{font-size:15px;min-height:48px}.home .hero .eyebrow{font-size:12px}.cf-notice-topbar>.shell{gap:2px 8px;padding-right:68px}.cf-notice-topbar h2{font-size:12px}.cf-notice-topbar p.cf-turnaround-compact{font-size:13px}.cf-notice-dismiss{font-size:12px;min-width:60px;padding:6px}.cf-turnaround-details summary{font-size:12px;min-height:32px}.cf-home-process .section-heading h2{font-size:30px}.cf-home-option-grid{gap:14px}.cf-home-testimonials{padding-block:30px}}

@media(max-width:600px){.home .hero-copy>.eyebrow{grid-row:1}.home .hero h1{grid-row:2}.home .hero-copy>.actions{grid-row:4}.home .hero-copy>.hero-note{grid-row:5}.home .hero-copy>.cf-hero-facts{grid-row:6}}

.cf-notice-topbar .cf-turnaround-details{padding:0!important;margin:0!important;border:0!important}
.wp-block-navigation__responsive-container.is-menu-open{padding:0!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding:72px 24px 24px!important;align-items:flex-start}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{min-height:44px;display:flex;align-items:center}
.top .brand{margin:0}.top .brand img{max-height:76px}
.shell.top{padding-block:14px}
@media(min-width:851px){.home .hero{align-items:start}.home .hero-copy{padding-top:16px}.home .hero-art{max-width:460px;justify-self:center}.home .hero .photo-card img{max-height:380px;width:100%;object-fit:contain}.home .hero h1{font-size:clamp(38px,3.8vw,52px)}}

/* Homepage process: explicit grid cells prevent badge/text overlap. */
.home .cf-home-process{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}
.home .cf-home-process .steps-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:24px}
.home .cf-home-process .step{grid-template-columns:44px minmax(0,1fr);gap:6px 16px;padding:20px;border:1px solid #c5d6d7;border-radius:16px;box-shadow:none;align-items:start}
.home .cf-home-process .step .step-number{grid-column:1;grid-row:1/3;width:44px;height:44px;margin:0;max-width:none;font-size:21px;line-height:1;transform:none;border-radius:13px}
.home .cf-home-process .step h3{grid-column:2;grid-row:1;max-width:none;width:auto;margin:0;font-size:21px;line-height:1.25}
.home .cf-home-process .step p:not(.step-number){grid-column:2;grid-row:2;max-width:none;width:auto;margin:0;font-size:15px;line-height:1.65}
.home .cf-home-process .section-heading h2{max-width:none;margin-bottom:12px}
.home .cf-home-process .cf-home-video h2{font-size:clamp(22px,2.1vw,26px);line-height:1.25;margin:0 0 18px;max-width:none}
.home .cf-home-process .cf-home-video figure{margin:0 0 16px}
.home .cf-home-process .cf-home-video p{margin:0;line-height:1.7}
@media(max-width:850px){.home .cf-home-process{grid-template-columns:minmax(0,1fr);align-items:start;gap:28px}}
@media(max-width:600px){.home .cf-home-process .step{grid-template-columns:36px minmax(0,1fr);padding:16px;gap:6px 12px}.home .cf-home-process .step .step-number{width:36px;height:36px;font-size:18px;border-radius:11px}.home .cf-home-process .step h3{font-size:19px}.home .cf-home-process .cf-home-video{padding:20px}}

/* Keep the brand story and its follow-up link on the shared content rail. */
.home .cf-home-brand-story{padding-bottom:24px}
.home .cf-home-brand-story h2{margin-bottom:12px}
.home .cf-home-brand-story p{max-width:none}
.home .cf-home-brand-story p:last-child{margin-top:22px;margin-bottom:0}
.home .cf-home-toolbox{padding-top:32px}
@media(max-width:600px){.home .cf-home-brand-story{padding-bottom:16px}.home .cf-home-toolbox{padding-top:24px}}

/* Small-screen hero: readable full-width copy and a useful product preview. */
@media(max-width:600px){
.home .hero{grid-template-columns:minmax(0,1fr);gap:16px}
.home .hero-copy>.lede{grid-column:1;grid-row:3;font-size:16px;line-height:1.6}
.home .hero-copy>.actions{grid-column:1;grid-row:4;flex-wrap:wrap}
.home .hero-art{grid-column:1;grid-row:5;width:100%;max-width:360px;justify-self:center;margin:4px auto 10px;padding:8px 18px}
.home .hero-art .photo-card{transform:none;padding:8px}
.home .hero-art .photo-card img{aspect-ratio:auto;width:100%;height:auto;max-height:340px;object-fit:contain}
.home .hero-copy>.hero-note{grid-column:1;grid-row:6}
.home .hero-copy>.cf-hero-facts{grid-column:1;grid-row:7}
}
