:root{--pg-navy:#173846;--pg-accent:#a16a2b;--pg-line:#dfded9}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#40505a;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid #a16a2b!important;outline-offset:4px}a{color:#173846}section[id]{scroll-margin-top:24px}.pg .wrap,.ip .wrap,.brand-wrap{max-width:1120px;margin:auto;padding-left:28px;padding-right:28px}.pg header.top,.ip header.top,.brand-header{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:25px 0;border-bottom:1px solid #dfded9}.brand-home{display:inline-flex;flex-shrink:0}.brand-wordmark{display:block!important;width:180px!important;height:auto!important;border-radius:0!important;max-width:100%!important}.pg header.top nav,.ip header.top nav,.brand-header nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.pg header.top nav a,.ip header.top nav a,.brand-header nav a{font:14px/1.5 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;color:#173846;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.brand-menu{display:none}.brand-tagline{color:#6a6f6f;font-size:12px;line-height:1.5}.pg footer.bot,.ip footer.bot,.brand-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px!important;border-top:1px solid #dfded9;padding:32px 0;color:#526366;font-size:13px}.brand-signoff{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.brand-signature{height:52px!important;width:auto!important;border-radius:0!important}.brand-signoff .brand-wordmark{width:150px!important}.brand-footer a,.bot a{color:#173846}.ftr-soc{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.ftr-soc a{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:44px}.ftr-soc svg{width:18px;height:18px;fill:currentColor}.pg .btn,.ip .btn,.gform_wrapper input[type=submit],.gform_wrapper button[type=submit],.post-password-form input[type=submit],.brand-content button,.brand-content input[type=submit]{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:240px!important;max-width:100%!important;min-height:52px!important;height:auto!important;padding:12px 18px!important;border:1px solid #173846!important;background:#173846!important;color:white!important;border-radius:26px!important;font:600 15px/1.4 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif!important;text-align:center!important;text-decoration:none!important;box-sizing:border-box!important;cursor:pointer}.pg .btn.ghost,.ip .btn.ghost{background:white!important;color:#173846!important}.pg .btn:hover,.ip .btn:hover,.gform_wrapper input[type=submit]:hover{background:#254e5c!important;color:white!important}.pg h1{font-size:clamp(44px,5.7vw,72px)!important}.pg .hero{gap:48px!important;padding:72px 0 84px!important;grid-template-columns:1.12fr .88fr}.pg .hero p{font-size:18px!important}.pg .hero .actions{gap:14px}.pg .cards.two{grid-template-columns:repeat(2,1fr)}.pg .cards.two .card{min-height:300px}.pg .vision{border-left:2px solid #a16a2b;padding-left:20px}.pg .block{padding:72px 0!important}.pg .about{background:#f6f5f1}.pg .about p{max-width:740px!important}.pg .card .btn{margin-top:16px}.ip .sig{background:none!important;padding:8px 0!important}.ip .sig img{width:180px!important;height:auto!important}.gform_wrapper{max-width:760px!important}.gform_wrapper input:not([type=submit]):not([type=checkbox]):not([type=radio]),.gform_wrapper textarea,.brand-content input[type=password],.brand-content input[type=search]{font-size:16px!important;border:1px solid #b9c4c7!important;border-radius:8px!important;padding:12px!important;max-width:100%!important;box-shadow:none!important}.gform_wrapper .gfield_label{color:#173846!important}.brand-content{max-width:1120px;margin:auto;padding:60px 28px 80px;min-height:50vh;font-size:18px;line-height:1.7}.brand-content h1,.brand-content h2{font-family:Georgia,serif;color:#173846;line-height:1.15;font-weight:400;letter-spacing:-.03em}.brand-content h1{font-size:clamp(36px,5vw,60px)}.brand-content img{max-width:100%;height:auto}.brand-content .post-password-form{max-width:520px}.brand-content .post-password-form label{display:block}.brand-content .post-password-form input[type=password]{display:block;width:100%;margin:12px 0}.archive-note{font-size:14px!important;border-left:2px solid #a16a2b;padding:12px 18px;background:#faf9f6;color:#526366}.brand-content .entry{border-top:1px solid #dfded9;padding:32px 0}.brand-content .entry h2{font-size:32px}.album-brand .brand-wrap{background:white}.album-brand .fa-wrap{margin:auto;padding:40px 20px;background:#0b0d10;border-radius:18px}.album-brand .fa-lock{margin:30px auto;background:white;color:#173846;border:1px solid #dfded9}.album-brand .fa-lock h1{color:#173846}.album-brand .fa-lock p,.album-brand .fa-lock label{color:#526366}.album-brand .fa-lock input[type=password]{background:white;color:#173846;border:1px solid #b9c4c7}.album-brand .fa-lock input[type=submit]{width:240px;margin:16px auto;border-radius:26px;background:#173846;color:white;min-height:52px}.brand-menu summary{cursor:pointer;list-style:none;border:1px solid #dfded9;border-radius:22px;padding:9px 18px;font-size:14px;color:#173846}.brand-menu summary::-webkit-details-marker{display:none}.brand-menu nav{padding-top:14px}
@media(max-width:900px){.pg header.top,.ip header.top,.brand-header{flex-wrap:wrap}.desktop-nav{display:none!important}.brand-menu{display:block;margin-left:auto}.brand-menu[open]{width:100%;margin-left:0}.brand-menu[open] summary{width:max-content}.brand-menu nav{display:flex!important;gap:8px 24px!important;align-items:flex-start!important}.pg .hero{grid-template-columns:1fr!important;gap:36px!important;padding:44px 0 60px!important}.pg .portrait{max-width:560px}.pg .cards.two{grid-template-columns:1fr}.pg .block{padding:54px 0!important}.pg h1{font-size:clamp(42px,8vw,64px)!important}.brand-content{padding:36px 24px 60px}.brand-tagline{max-width:220px}}
@media(max-width:380px){.pg .wrap,.ip .wrap,.brand-wrap{padding-left:20px;padding-right:20px}.brand-wordmark{width:155px!important}.pg h1{font-size:42px!important}.pg .card{padding:24px!important}.pg .hero p{font-size:17px!important}.brand-signoff{gap:16px}.brand-content{padding-left:20px;padding-right:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.pg header.top,.ip header.top{flex-direction:row!important}.wp-site-blocks{padding-top:0!important;padding-bottom:0!important}.pg header.top,.ip header.top{align-items:center!important}.ip .intro>div{min-width:0!important}.ip .intro{min-width:0}.pg,.ip{overflow-wrap:break-word}.pg .btn,.ip .btn{flex-shrink:0}
@media(max-width:640px){.ip .intro{display:block!important}.ip .intro>img{width:120px;height:120px;margin-bottom:24px}.ip .intro>div{width:100%}.ip .logos{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px;gap:20px}.ip .logos img{max-height:56px}}
/* Reset block-theme full-width gutters so focus and open menus cannot shift the page. */
.wp-site-blocks,.wp-site-blocks>main,.wp-site-blocks>main>.wp-block-group,.wp-block-post-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;inset:auto!important}.wp-block-post-content>.pg,.wp-block-post-content>.ip{margin:0!important;width:100%!important}.wp-block-post-content>.pg>.wrap,.wp-block-post-content>.ip>.wrap{margin-left:auto!important;margin-right:auto!important}

/* Blog cards share the site's navy, rounded buttons and readable type. */
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:36px 0}.blog-card{min-width:0;display:flex;flex-direction:column;border:1px solid #dfded9;border-radius:12px;overflow:hidden;background:#fff}.blog-card-image{display:block;aspect-ratio:16/9;overflow:hidden}.blog-card-image img{display:block;width:100%;height:100%!important;object-fit:cover}.blog-card-copy{padding:24px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.brand-content .blog-card h2{font-size:27px;margin:0 0 18px;line-height:1.2}.blog-card h2 a{text-decoration:none}.blog-card p{font-size:16px;line-height:1.65;margin:0 0 26px}.blog-read-more{display:inline-flex;align-items:center;justify-content:center;width:240px;max-width:100%;align-self:center;min-height:52px;border-radius:26px;background:#173846;color:#fff!important;text-decoration:none;font-size:15px;font-weight:600;margin-top:auto;padding:12px 18px}.blog-read-more:hover{background:#254e5c}.brand-content .pagination{margin:38px 0}.brand-content .page-numbers{display:inline-block;padding:8px 12px}.brand-content .page-numbers.current{background:#f6f5f1;border-radius:8px}@media(max-width:1050px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.blog-grid{grid-template-columns:1fr;gap:24px}.brand-content .blog-card h2{font-size:28px}}

/* Branded, clear pagination with full-size previous/next targets. */
.blog-pagination{margin:48px 0 0;padding:28px 24px;background:#f6f5f1;border:1px solid #dfded9;border-radius:12px;text-align:center}.pagination-summary{font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 20px;color:#526366}.pagination-directions{display:flex;justify-content:center;gap:20px}.pagination-directions>a,.pagination-disabled{width:240px;max-width:calc(50% - 10px);min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:14px;border:1px solid #173846;border-radius:26px;padding:12px 18px;font-size:15px;line-height:1.4;font-weight:600;text-decoration:none}.pagination-directions>a{color:#fff;background:#173846;transition:background .15s,transform .15s}.pagination-directions>a:hover{background:#254e5c;transform:translateY(-2px)}.pagination-disabled{background:transparent;color:#738085;border-color:#cbd0cf}.pagination-pages{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin-top:24px}.brand-content .pagination-pages .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:8px;border:1px solid #d2d7d5;border-radius:50%;text-decoration:none;font-size:15px;line-height:1;background:white;color:#173846}.brand-content .pagination-pages .page-numbers.current{background:#173846;color:white;border-color:#173846;font-weight:700}.brand-content .pagination-pages a:hover{background:#e9e5dc;border-color:#a16a2b}.brand-content .pagination-pages .dots{background:transparent;border-color:transparent;min-width:22px;padding:0}@media(max-width:600px){.blog-pagination{padding:24px 14px}.pagination-directions{gap:12px}.pagination-directions>a,.pagination-disabled{max-width:calc(50% - 6px);padding:12px 10px;gap:9px}.pagination-pages{gap:6px}}@media(prefers-reduced-motion:reduce){.pagination-directions>a{transition:none}.pagination-directions>a:hover{transform:none}}

/* Dev review: mobile navigation and contact field spacing, 2026-10-30. */
@media(max-width:900px){
.pg header.top .brand-menu nav,.ip header.top .brand-menu nav,.brand-header .brand-menu nav{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;width:100%;padding:12px 0 0}
.pg header.top .brand-menu nav a,.ip header.top .brand-menu nav a,.brand-header .brand-menu nav a{display:flex!important;width:100%;min-height:48px;padding:10px 12px;border-bottom:1px solid #dfded9;font-size:16px!important;border-radius:0}
.brand-menu nav a:last-child{border-bottom:0!important}.brand-menu summary{min-height:44px;display:flex;align-items:center;justify-content:center}
}
body.page-id-36 #gform_wrapper_1{--gf-ctrl-size:48px;--gf-ctrl-padding-x:14px;--gf-ctrl-padding-y:12px;--gf-form-gap-y:24px;margin-top:28px}
body.page-id-36 #gform_1 .gform_fields{row-gap:24px}
body.page-id-36 #gform_1 input[type=text],body.page-id-36 #gform_1 input[type=email],body.page-id-36 #gform_1 input[type=tel],body.page-id-36 #gform_1 textarea{width:100%!important;min-height:48px!important;padding:12px 14px!important;border:1px solid #b9c4c7!important;border-radius:10px!important;background:#fff!important;color:#173846!important;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif!important}
body.page-id-36 #gform_1 textarea{min-height:180px!important;height:180px!important;resize:vertical}
body.page-id-36 #gform_1 .gfield_label{font-size:15px!important;font-weight:600!important;margin-bottom:8px!important}
body.page-id-36 #gform_1 .ginput_complex{gap:16px}
body.page-id-36 #gform_1 .gform_footer{margin-top:28px!important;padding-top:0!important}

/* Contact intro shares the existing readable form column. */
body.page-id-36 .ip main>p.txt{max-width:760px}

/* Approved teaching portrait: supporting placement below unchanged hero. */
.phil-teaching-support{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:48px;align-items:center}.phil-teaching-photo{display:block;width:100%;height:auto;border-radius:16px}.phil-teaching-copy{min-width:0}.phil-teaching-copy h2{margin-top:16px}@media(max-width:760px){.phil-teaching-support{grid-template-columns:1fr;gap:28px}.phil-teaching-photo{max-width:360px;margin:0 auto}}

/* Approved native subject dropdown, 2026-10-30. */
body.page-id-36 #gform_1 select{width:100%!important;min-height:48px!important;padding:12px 40px 12px 14px!important;border:1px solid #b9c4c7!important;border-radius:10px!important;background-color:#fff!important;color:#173846!important;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif!important}body.page-id-36 #gform_1 select:focus-visible{outline:3px solid #a16a2b!important;outline-offset:4px}
