/* Final assembly: the selected material language continues quietly through the page. */
/* The optional Google booking surface is isolated from the agency artwork. */
.booking-inline{grid-column:1/-1;border-top:1px solid #cbbfc5;scroll-margin-top:24px}
.booking-inline>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0;cursor:pointer;list-style:none;font-size:18px;line-height:1.5;font-weight:600}
.booking-inline>summary::-webkit-details-marker{display:none}
.booking-inline>summary span{font-size:24px;color:#a62a46}
.booking-inline[open]>summary span{transform:rotate(45deg)}
.booking-inline>summary:focus-visible{outline:3px solid var(--coral);outline-offset:5px}
.booking-body{padding-top:8px;max-width:100%;min-width:0}
.booking-intro{font-size:16px;line-height:1.75;max-width:780px}
.booking-intro a{text-decoration:underline;text-underline-offset:4px}
.booking-provider{font-size:13px;line-height:1.7;color:#6f6270;margin-top:12px}
.booking-body iframe{display:block;width:100%;height:700px;border:0;border-radius:8px;background:#fff;margin-top:24px}
@media(max-width:760px){.booking-inline>summary{font-size:16px}.booking-body iframe{height:820px;border-radius:4px}.booking-intro{font-size:15px}}
/* v1.9.5: direct booking, an email alternative, and vertically centred controls. */
.site-header .header-cta{display:inline-flex;align-items:center;justify-content:center;line-height:1.2;min-height:48px;white-space:nowrap}
.site-header .header-cta .cta-label{display:inline;line-height:1.2}
.hero-contact-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.hero-contact-actions .button{line-height:1.3;gap:24px}
.hero-email-link{font-size:15px;text-decoration:underline;text-underline-offset:5px;color:#eee5ed;padding:12px 0}
.hero .hero-work-link{display:flex;width:max-content;margin:20px 0 0}
.contact-actions>.button{line-height:1.3;gap:22px}
.contact-actions .text-link{font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.contact-page{align-items:start;gap:clamp(40px,5vw,84px)}
.contact-options{padding-top:8px;min-width:0}
.contact-option{padding:28px 0 32px;border-top:1px solid #cbbfc5}
.contact-option .eyebrow{font-size:11px;margin-bottom:17px}
.contact-option h2{font-size:30px;line-height:1.15;letter-spacing:-.04em;font-weight:500}
.contact-option>p:not(.eyebrow){font-size:16px;line-height:1.75;margin-top:16px;max-width:490px;color:#655969}
.contact-option .button{margin-top:25px;line-height:1.3;gap:22px}
.contact-option .contact-note{font-size:13px!important;line-height:1.75;margin-top:17px!important;color:#6f6270}
.contact-option .direct-contact{margin-top:24px;border-top:0;padding-top:0;gap:12px;font-size:20px;overflow-wrap:anywhere}
.contact-option .direct-contact button{font-size:14px;min-height:44px;width:max-content;max-width:100%;text-decoration:underline;text-underline-offset:4px}
.contact-linkedin{display:inline-block;margin-top:30px;font-size:14px;text-decoration:underline;text-underline-offset:4px;line-height:1.6}
@media(max-width:760px){
 .site-header .header-cta,body:not(.inner-page) .site-header .header-cta{background:#ff786e;color:#211922;border-color:#ff786e;min-height:44px;padding:11px 15px;font-size:13px;font-weight:600;gap:10px;align-items:center;justify-content:center;line-height:1.2}
 .site-header .header-cta:hover,body:not(.inner-page) .site-header .header-cta:hover{background:#ff9589;color:#211922}
 .site-header .header-cta .cta-label{display:inline}
 .hero-contact-actions{gap:4px 20px;align-items:center}
 .hero-contact-actions .button{font-size:14px;padding:17px 20px;max-width:100%;gap:18px}
 .hero-email-link{font-size:14px;padding:12px 0}
 .hero .hero-work-link{margin-top:12px}
 .contact-actions>.button{font-size:14px;padding:19px;gap:16px}
 .contact-page{gap:36px}
 .contact-options{padding-top:0}
 .contact-option h2{font-size:28px}
 .contact-option .button{font-size:14px;padding:17px 20px;gap:18px;max-width:100%}
 .contact-option .direct-contact{font-size:19px}
}
@media(max-width:380px){.contact-page h1{font-size:40px;line-height:1.1}}
.brand-name.philip-morris{font-size:24px;font-weight:600;letter-spacing:-.035em;max-width:165px;line-height:1.2}
.approach-section{position:relative;isolation:isolate;overflow:hidden;background:#f4f0e9}
.approach-section .section-heading{position:relative;z-index:1}
.approach-section .section-intro{color:#655969}
.process{position:relative;z-index:1}
.process li{border-top:1px solid #c9baba;padding-top:22px}
.process .process-sketch{width:120px;height:80px;margin:18px 0 24px;object-fit:cover}
.process li:last-child .process-sketch{object-fit:contain;width:80px}
.process h3{font-size:25px;font-weight:600;letter-spacing:-.035em}
.process p{font-size:16px;line-height:1.7}
.approach-material{position:absolute;right:-65px;bottom:-190px;width:340px;opacity:.075;pointer-events:none;z-index:0}
.review-loop,.ai-note{position:relative;z-index:1}
.review-loop{max-width:1100px}
.contact-section{position:relative;isolation:isolate;overflow:hidden;background:#211922;color:#f7f6f2}
.contact-section .eyebrow{color:#ff8a7e}
.contact-section .contact-layout{position:relative;z-index:1;gap:60px}
.contact-section h2 em{color:#ff8a7e}
.contact-section .contact-layout p,.contact-section .contact-actions>span{color:#d9cdd7}
.contact-section .button.ink{background:#ff786e;color:#211922}
.contact-section .text-link{color:#eee5ed}
.contact-material{position:absolute;right:-40px;bottom:-135px;width:340px;opacity:.22;pointer-events:none;z-index:0}
.site-footer{background:#17111d;border-top:1px solid #4a3747}
.site-footer>p{color:#cbbfcb;font-size:13px}
.site-footer>div{font-size:12px;gap:24px}
@media(max-width:1100px){.brand-links{gap:22px;flex-wrap:wrap}.brand-name.philip-morris{font-size:21px}.process{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.contact-layout{align-items:start}}
@media(max-width:760px){
 .brand-name.philip-morris{font-size:20px;max-width:none}
 .process{grid-template-columns:1fr;gap:34px}
 .process .process-sketch{margin:14px 0 18px;width:105px;height:70px}
 .process h3{font-size:25px}.process p{font-size:16px;max-width:480px}
 .approach-material{display:none}.contact-material{width:220px;right:-70px;opacity:.12}
 .contact-section .contact-layout{gap:32px}.contact-section .contact-layout p{font-size:16px}
 .site-footer>div{flex-wrap:wrap;justify-content:start;gap:18px 22px;font-size:12px}
 .site-footer>p{font-size:12px}
}
