/* Contact page uses the same shared header.php as the shop. */
body.laalu-contact-page{background:#faf4ec}
body.laalu-contact-page #masthead,body.laalu-contact-page #colophon,body.laalu-contact-page #secondary,body.laalu-contact-page .entry-header,body.laalu-contact-page .entry-title,body.laalu-contact-page .wp-block-post-title{display:none!important}
body.laalu-contact-page #content>.ast-container{display:block;width:100%;max-width:none;padding:0}
body.laalu-contact-page #primary,body.laalu-contact-page #main,body.laalu-contact-page article,body.laalu-contact-page .entry-content{width:100%;max-width:none;margin:0!important;padding:0!important;border:0!important}
body.laalu-contact-page .entry-content>.wp-block-shortcode{max-width:none;margin:0}
.ll-contact{border-top:6px solid #f4cfd1;background:#faf4ec;color:#34556b}
.ll-contact .laalu-nav{border-bottom:0}
.ll-contact .ll-shell{width:calc(100% - 48px);max-width:1180px}
.ll-contact-hero{position:relative;isolation:isolate;overflow:hidden;text-align:center;border-top:4px solid #f4cfd1;background:#f4e8d8;padding:56px 24px 60px}
.ll-contact-hero::before{content:'';position:absolute;z-index:-1;width:220px;height:220px;border-radius:50%;background:#f4cfd1;top:28px;left:-150px}
.ll-contact-hero::after{content:'';position:absolute;z-index:-1;width:140px;height:140px;border-radius:50%;border:22px solid #e1777b;box-shadow:0 0 0 22px #de7033,0 0 0 44px #edaf34,0 0 0 66px #778b50,0 0 0 88px #74a1c0;right:-140px;bottom:-150px}
.ll-contact-hero h1{font:400 clamp(36px,4.5vw,62px)/1.1 var(--ll-font);letter-spacing:-.035em;color:#34556b;margin:0 auto 20px;max-width:900px}
.ll-contact-hero>p:last-child{font:18px/1.65 var(--ll-font);margin:0 auto;max-width:650px}
.ll-contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;grid-template-rows:1fr auto;gap:28px 80px;padding-block:64px 80px;align-items:stretch}
.ll-contact-note{height:100%;padding:24px 0 0;display:grid;grid-template-rows:auto 1fr auto}
.ll-contact-mail-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#f4cfd1;margin-bottom:24px;color:#34556b}
.ll-contact h2{font:400 36px/1.2 var(--ll-font);color:#34556b;margin:0 0 20px;letter-spacing:-.025em}
.ll-contact-note>p{font-size:16px;line-height:1.7;max-width:330px;margin:0 0 24px}
.ll-contact-email-block{align-self:center}
.ll-contact-note .ll-contact-email-label{font-size:12px;letter-spacing:.12em;font-weight:700;margin:0 0 8px}
.ll-contact .ll-contact-email{font:400 29px/1.4 var(--ll-font);text-decoration:underline!important;text-underline-offset:6px;overflow-wrap:break-word}
.ll-contact-note .ll-contact-small{margin-top:14px}
.ll-contact .ll-contact-small{font-size:13px;line-height:1.6;color:#645b54}
.ll-contact-layout>.ll-contact-note{grid-column:1;grid-row:1}.ll-contact-layout>.ll-contact-form-card{grid-column:2;grid-row:1 / 3}.ll-contact-layout>.ll-newsletter{grid-column:1;grid-row:2;align-self:end}
.ll-newsletter{margin:0;padding:24px;background:#fff;border:1px solid #e8dccd;border-radius:18px;max-width:390px}
.ll-newsletter .ll-eyebrow{margin-bottom:8px}
.ll-newsletter h2{font-size:27px;margin-bottom:10px}
.ll-newsletter>p{font-size:15px;line-height:1.6;margin:0 0 18px}
.ll-newsletter form{margin:0}
.ll-newsletter form>label:first-of-type{margin-top:0}
.ll-newsletter-row{display:flex;gap:8px;align-items:stretch}
.ll-newsletter .ll-newsletter-row input{margin:0;min-width:0}
.ll-newsletter-row button{flex:0 0 auto;border:0;border-radius:9px;background:#e1777b;color:#fff;padding:10px 16px;font-weight:800;cursor:pointer}
.ll-newsletter-row button:hover{background:#ca6b6f}
.ll-newsletter .ll-newsletter-consent{display:flex!important;gap:8px;align-items:flex-start;font-size:12px;font-weight:400;line-height:1.55;margin:14px 0 0}
.ll-newsletter .ll-newsletter-consent input{display:block;width:auto!important;min-height:0;margin:3px 0 0;padding:0;flex:0 0 auto}
.ll-newsletter .ll-newsletter-consent a{text-decoration:underline!important;text-underline-offset:3px}
.ll-newsletter-message{padding:12px 14px;border:1px solid #ca6b6f;background:#fbefef;border-radius:9px;color:#834547}
.ll-newsletter-message.is-success{border-color:#778b50;background:#ebeee5;color:#4d5a34}
.ll-contact-form-card{padding:34px;background:#fff;border:1px solid #e8dccd;border-radius:22px;display:flex;flex-direction:column}
.ll-contact-form-card h2{font-size:30px;margin-bottom:28px}
.ll-contact-form-card form{display:flex;flex:1;flex-direction:column}
.ll-contact form label{display:block;font-size:14px;font-weight:700;margin:22px 0 8px}
.ll-contact form label span{font-weight:400;color:#645b54}
.ll-contact form input:not([type=hidden]),.ll-contact textarea{box-sizing:border-box;display:block;width:100%;border:1px solid #a79a90;border-radius:9px;background:#fcf9f5;color:#34556b;font:16px/1.5 var(--ll-font);padding:12px 14px;box-shadow:none}
.ll-contact textarea{min-height:175px;resize:vertical;flex:1}
.ll-contact input:focus-visible,.ll-contact textarea:focus-visible,.ll-contact button:focus-visible,.ll-contact a:focus-visible{outline:3px solid #466173;outline-offset:3px}
.ll-contact .ll-field-help{font-size:13px;color:#645b54;margin:8px 0 0}
.ll-contact .ll-contact-small a{text-decoration:underline!important}
.ll-contact .ll-contact-send{display:inline-flex;gap:22px;align-items:center;justify-content:center;min-height:48px;margin-top:8px;border:0;border-radius:30px;padding:13px 26px;background:#f4cfd1;color:#34556b;font:700 14px/1.5 var(--ll-font);cursor:pointer}
.ll-contact .ll-contact-send:hover{background:#eeb4b6}
.ll-contact .ll-contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ll-contact-error,.ll-contact-success{padding:16px 18px;border:1px solid #ca6b6f;background:#fbefef;border-radius:10px;font-size:15px;line-height:1.6;margin-bottom:20px;color:#834547}
.ll-contact-success{border-color:#778b50;background:#ebeee5;color:#4d5a34}
.ll-contact-footer{border-top:1px solid #e5dacb;background:#f4e8d8;text-align:center;padding:30px 20px}
.ll-contact-footer p{font:22px/1.4 var(--ll-font);margin:0 0 12px}
.ll-contact-footer a{font-size:14px;text-decoration:underline!important;text-underline-offset:4px}
/* Same two-row tablet header used on the homepage. */
@media(min-width:701px) and (max-width:1000px){.ll-contact>.laalu-nav{grid-template-columns:1fr auto;gap:16px;padding-top:16px;padding-bottom:16px}.ll-contact>.laalu-nav>.laalu-logo{grid-column:1;grid-row:1}.ll-contact>.laalu-nav>.laalu-actions{grid-column:2;grid-row:1;justify-self:end}.ll-contact>.laalu-nav>nav{grid-column:1/-1;grid-row:2;min-width:0}.ll-contact .laalu-menu{justify-content:center;flex-wrap:wrap;gap:12px 24px;padding:0;overflow:visible}}
@media(max-width:900px){.ll-contact-layout{gap:28px 32px;grid-template-columns:.85fr 1.15fr}.ll-contact-form-card{padding:24px}}
@media(max-width:700px){.ll-contact .ll-shell{width:calc(100% - 28px)}.ll-contact-hero{padding:40px 20px}.ll-contact-hero>p:last-child{font-size:17px}.ll-contact-layout{grid-template-columns:1fr;grid-template-rows:auto;gap:28px;padding-block:28px 44px}.ll-contact-layout>.ll-contact-note{grid-column:1;grid-row:1}.ll-contact-layout>.ll-contact-form-card{grid-column:1;grid-row:2}.ll-contact-layout>.ll-newsletter{grid-column:1;grid-row:3}.ll-contact-note{height:auto;padding:0;display:block}.ll-contact-note>p,.ll-contact-intro>p{max-width:none;margin-bottom:14px}.ll-contact-mail-icon{width:56px;height:56px;margin-bottom:16px}.ll-contact-note .ll-contact-email-label{margin-top:20px}.ll-contact h2{font-size:30px}.ll-contact-form-card{padding:22px}.ll-contact .ll-contact-send{width:100%}.ll-newsletter{max-width:none;margin:0}.ll-newsletter-row{display:block}.ll-newsletter .ll-newsletter-row input{margin-bottom:8px}.ll-newsletter-row button{width:100%}}

/* Full-width Astra contact container. */
body.laalu-contact-page #content .ast-container,
body.laalu-contact-page #primary,
body.laalu-contact-page #main,
body.laalu-contact-page article,
body.laalu-contact-page .entry-content,
body.laalu-contact-page .entry-content > .ll-contact,
body.laalu-contact-page .entry-content > .wp-block-shortcode {
 width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
}
