/* Shared type and colour system across AGAPE. The handwritten hero remains artwork. */
:root{--display:'Bebas Neue Cyrillic',sans-serif;--classic:'Times New Roman',Times,serif;--sans:var(--classic);--serif:var(--classic);--paper:#F3EEDC;--cream:#F3EEDC;--ink:#51062A;--burgundy:#51062A;--copper:#51062A;--muted:#51062A;--line:#51062A40;--fern:#51062A;}
body{font:400 20px/1.45 var(--classic);color:#51062A;background:#F3EEDC;}
button,input,textarea,select{font-family:var(--classic);}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;letter-spacing:0;text-transform:uppercase;}
#about .manifesto-copy h2,#work h2,#people h2,#faq h2,#contact h2,dialog h2{font:400 100px/.98 var(--display);letter-spacing:0;text-transform:uppercase;}
#about .manifesto-copy h2 em,#work h2 em,#people h2 em,#faq h2 em,#contact h2 em,dialog h2 em{display:block;font:400 75px/1.06 var(--classic);letter-spacing:0;text-transform:none;}
#about .manifesto-copy h2 em{margin-left:12%;}
#about .manifesto-text,#about .manifesto-text p,.speaker-info p,.contact-copy>p,.faq-list p,.dialog-description{font:400 20px/1.45 var(--classic);color:inherit;}
#about{color:#51062A;}
#work,#people{background:#F3EEDC;color:#51062A;}
.section::before{display:none;}
#people .speaker h3,.project-caption h3{font:400 35px/1.1 var(--display);letter-spacing:0;text-transform:uppercase;}
.speaker-info p+p{margin-top:14px;}
.header,.header.scrolled,.mobile-nav{background:#F3EEDC;color:#51062A;border-color:#51062A40;}
.desktop-nav,.mobile-nav,.menu-toggle{font:400 20px/1.2 var(--classic);}
.wordmark{font-family:var(--classic);}
.shell-label{font-family:var(--display);font-size:35px;letter-spacing:0;}
.shell-cta{font-family:var(--classic);font-size:26px;}
#formats .service-photo{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center;background:none;margin:0 0 25px;}
#formats .service-photo-0{object-position:center 36%;}
#formats .service-heading{display:block;margin-bottom:20px;}
#formats .service-heading h3{font:400 35px/1.1 var(--display);text-transform:uppercase;letter-spacing:0;}
#formats .format-description,#formats .service-list,#formats .service-result{font:400 20px/1.45 var(--classic);text-transform:none;letter-spacing:0;}
#formats .format-description{margin:0 0 26px;}
#formats .format-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:22px;margin:26px 0;}
#formats .format-price .price{font:400 44px/1.1 var(--classic);}
#formats .format-price>span:last-child{font:italic 400 20px/1.2 var(--classic);color:inherit;max-width:none;}
#formats .service-list{list-style:disc;padding-left:22px;}
#formats .service-list li{margin:0 0 14px;padding-left:3px;}
#formats .service-list li::marker{font-size:.75em;}
#formats .service-result{font-style:italic;border-left:2px solid #51062A66;padding:8px 0 8px 18px;margin:30px 0 0;}
#formats .text-link{font:400 20px/1.3 var(--classic);margin-top:25px;}
#faq{background:#51062A;color:#F3EEDC;}
#faq .faq-list details{border-color:#F3EEDC66;}
#faq .faq-list summary{font:400 35px/1.15 var(--display);text-transform:uppercase;letter-spacing:0;}
#faq .faq-list p{padding-right:20px;}
#faq :focus-visible{outline-color:#F3EEDC;}
#contact{background:#F3EEDC;color:#51062A;}
#contact .contact-copy::after{display:none;}
#contact .field,#contact input,#contact textarea,#contact .text-link,#contact .selected-format{font:400 20px/1.35 var(--classic);color:#51062A;}
#contact input,#contact textarea{border-color:#51062A66;background:transparent;}
#contact input::placeholder,#contact textarea::placeholder{font:400 20px/1.35 var(--classic);color:#51062A;opacity:.6;}
#contact .optional,#contact .form-note{font:400 18px/1.4 var(--classic);color:#51062A;}
#contact .button-cream{background:#51062A;color:#F3EEDC;font:400 22px/1.3 var(--classic);border:1px solid #51062A;border-radius:10px;box-shadow:none;}
#contact footer{font:400 18px/1.4 var(--classic);color:#51062A;border-color:#51062A40;}
#contact .footer-social{font:400 18px/1.4 var(--classic);}
dialog{background:#F3EEDC;color:#51062A;}
dialog .button-dark{background:#51062A;color:#F3EEDC;}
dialog .button-outline{color:#51062A;border-color:#51062A;}
dialog button,dialog a,.brief-output,.brief-status{font-family:var(--classic);}
@media(min-width:761px) and (max-width:1150px){#about .manifesto-copy h2,#work h2,#people h2,#faq h2,#contact h2,dialog h2{font-size:75px;}#about .manifesto-copy h2 em,#work h2 em,#people h2 em,#faq h2 em,#contact h2 em,dialog h2 em{font-size:55px;}.shell-label{font-size:28px;}}
@media(max-width:760px){#about .manifesto-copy h2,#work h2,#people h2,#faq h2,#contact h2,dialog h2{font-size:clamp(48px,12vw,70px);}#about .manifesto-copy h2 em,#work h2 em,#people h2 em,#faq h2 em,#contact h2 em,dialog h2 em{font-size:clamp(37px,9vw,52px);}.shell-label{font-size:clamp(15px,4.4vw,25px);}.shell-cta{font-size:21px;}.menu-toggle{font-size:18px;}.speaker{grid-template-columns:1fr;gap:20px;}.speaker-photo{max-width:280px;}.speaker-info{max-width:none;}#faq .faq-list summary{font-size:30px;}#contact .field-row{grid-template-columns:1fr;}#contact .field{margin-bottom:24px;}#contact footer{grid-template-columns:1fr;gap:20px;}#contact footer>a:last-child{justify-self:start;text-align:left;}#contact .footer-social{flex-wrap:wrap;gap:22px;}#formats .path-steps{gap:65px;}#formats .service-photo{max-height:520px;}}
.header .desktop-nav,.header .wordmark span{font-family:var(--classic);}
/* Unframed square portraits. */
#people .speaker-photo{aspect-ratio:1/1;height:auto;padding:0;border:0;outline:0;border-radius:0;background:none;box-shadow:none;}
#people .speaker-photo::before,#people .speaker-photo::after{display:none;}
#people .speaker-photo img{display:block;width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;border:0;border-radius:0;box-shadow:none;transform:none;}

/* A close portrait crop of Katya, matching the square Sasha portrait. */
#people .speaker-photo img.katya-portrait{object-position:center 26%;transform:scale(1.36);transform-origin:67% 0;}
