/* ADSJOY — CAMPAIGN CANVAS / 2026. Unique design system, no external dependencies. */
:root{--pink:#f35b72;--orange:#fb925b;--ink:#292630;--muted:#68646c;--paper:#fffaf8;--white:#fff;--line:#e9dfdc;--peach:#ffede4;--blush:#fff0f2;--lav:#f5f0fa;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;overflow-x:clip}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.17;letter-spacing:-.035em}h1{font-size:clamp(2.35rem,4.6vw,3.75rem);font-weight:750}h2{font-size:clamp(1.75rem,2.8vw,2.55rem);font-weight:730}h3{font-size:1.14rem}p{color:var(--muted)}.container{width:min(var(--max),calc(100% - 56px));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-100px;background:white;padding:10px;z-index:100}.skip-link:focus{top:8px}.site-header{background:#fffdfa;border-bottom:1px solid var(--line);position:relative;z-index:20}.header-bar{min-height:78px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;flex:none}.brand img{width:140px;height:auto;max-height:55px;object-fit:contain}.primary-nav{display:flex;align-items:center;gap:27px;margin-left:auto}.primary-nav a{font-size:.87rem;font-weight:650;color:#55515b}.primary-nav a:hover,.primary-nav a[aria-current]{color:#d94d66}.header-cta{border:1px solid #f5b4ae;border-radius:100px;padding:9px 17px;font-size:.85rem;font-weight:700;white-space:nowrap}.header-cta:hover{background:var(--blush)}.menu-toggle{display:none;flex-direction:column;gap:5px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:9px;background:white;width:42px;height:42px}.menu-toggle span{height:2px;width:18px;background:var(--ink);border-radius:2px}.overline{display:inline-block;color:#c65064;font-weight:800;letter-spacing:.12em;font-size:.68rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;border:1px solid var(--ink);background:var(--ink);color:white;border-radius:7px;padding:12px 19px;font-weight:700;font-size:.88rem;min-height:46px;transition:transform .2s,background .2s}.button:hover{background:#4a414d;transform:translateY(-2px)}.button-outline{background:transparent;color:var(--ink);border-color:#d7bbb6}.button-outline:hover{background:white}.quiet-link{font-size:.9rem;font-weight:750;border-bottom:1px solid #e9a4a3;padding-bottom:4px}.poster-hero{background:linear-gradient(135deg,#fff7f2,#fffaf8 55%,#fff0ed);overflow:hidden}.poster-layout{display:grid;grid-template-columns:1fr .85fr;gap:40px;align-items:center;min-height:565px;padding-block:78px 48px}.poster-title h1{font-size:clamp(3.15rem,6vw,5.1rem);line-height:1.05;margin:22px 0 20px;letter-spacing:-.065em}.underline-word{position:relative;white-space:nowrap}.underline-word:after{content:'';height:7px;position:absolute;left:0;right:0;bottom:-6px;border-radius:100%;background:linear-gradient(90deg,var(--pink),var(--orange));transform:rotate(-1.4deg)}.period{color:var(--pink)}.poster-title>p{max-width:490px;font-size:1.05rem;line-height:1.8}.poster-actions{display:flex;align-items:center;gap:25px;margin-top:28px}.poster-visual{height:425px;position:relative;isolation:isolate}.visual-disc{position:absolute;border-radius:50%}.disc-main{width:355px;height:355px;right:45px;top:28px;background:linear-gradient(135deg,#ff9b71,#f36583);box-shadow:inset -20px -20px 50px #d7477a26}.disc-small{width:132px;height:132px;left:8px;bottom:12px;background:#e9d9ff}.visual-note{position:absolute;z-index:2;background:white;border:1px solid #f2ded8;box-shadow:0 14px 40px #3e27331a;padding:20px 22px;border-radius:6px;font-size:.68rem;letter-spacing:.11em;font-weight:800}.visual-note b{display:block;font-size:1.14rem;letter-spacing:-.03em;line-height:1.25;margin-top:7px;max-width:200px}.note-top{top:20px;left:0;transform:rotate(-6deg)}.note-bottom{right:0;bottom:38px;transform:rotate(5deg)}.visual-star{position:absolute;top:35%;left:47%;font-size:7rem;color:white;text-shadow:0 4px 15px #e3636633}.hero-caption{display:flex;gap:55px;border-top:1px solid #e8d6d1;padding:17px 0 20px;font-size:.68rem;letter-spacing:.15em;font-weight:800;color:#986b6b}.intro-sentence{background:#fff;padding:90px 0}.intro-sentence-inner{display:grid;grid-template-columns:210px 1fr;gap:45px;align-items:start}.intro-sentence p{font-size:clamp(1.55rem,3vw,2.5rem);line-height:1.35;letter-spacing:-.035em;color:#746c74;max-width:830px;margin:0}.intro-sentence strong{color:var(--ink)}.work-showcase{padding:85px 0;background:#f9f5f3}.work-top{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;align-items:end;margin-bottom:32px}.work-top .overline{grid-column:1/-1;margin-bottom:13px}.work-top h2{margin:0}.work-top p{margin:0;max-width:460px}.mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(170px,auto);gap:14px}.tile{min-width:0;display:flex;flex-direction:column;position:relative;padding:25px;border-radius:9px;border:1px solid #ece2de;background:white;transition:transform .2s,box-shadow .2s}.tile:hover{transform:translateY(-3px);box-shadow:0 14px 28px #32202b13}.tile-feature{grid-column:span 2;grid-row:span 2;background:linear-gradient(130deg,#ffe3df,#fff5ee)}.tile-soft{grid-column:span 2;background:#f5ebf6}.tile-ink{grid-column:span 2;background:#292630;color:white}.tile-ink p{color:#e2dce0}.tile-wide{grid-column:span 2;background:#ffede2}.tile-top{font-size:.66rem;letter-spacing:.11em;font-weight:800;color:#b65a69}.tile-ink .tile-top{color:#ffb6a2}.tile h3{font-size:1.3rem;max-width:300px;margin:20px 0 8px}.tile-feature h3{font-size:2rem;margin-top:70px}.tile p{font-size:.84rem;max-width:330px;line-height:1.6;margin-bottom:28px}.tile-link{font-size:1.4rem;margin-top:auto;align-self:flex-end;color:#d64e67}.work-bottom{text-align:right;margin-top:22px}.moment-section{padding:85px 0;background:white}.moment-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:95px}.moment-graphic{height:360px;background:#fff2eb;border-radius:12px;position:relative;overflow:hidden}.moment-line{position:absolute;width:300px;height:300px;border:2px dashed #f7a49c;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.moment-sticker{position:absolute;z-index:2;border:1px solid #efc3b6;background:white;padding:13px 23px;font-size:1.05rem;font-weight:800;box-shadow:0 12px 25px #a25c5c20;border-radius:100px}.sticker-a{left:9%;top:20%;transform:rotate(-9deg)}.sticker-b{right:8%;top:43%;background:#f9d0d7;transform:rotate(7deg)}.sticker-c{left:19%;bottom:14%;background:#ffe0ba;transform:rotate(-4deg)}.moment-copy p{max-width:500px;line-height:1.8}.moment-copy h2{margin:15px 0 20px}.moment-copy .button{margin-top:12px}.signal-section{background:#f6f0fa;padding:85px 0}.signal-heading{text-align:center;margin-bottom:38px}.signal-heading h2{margin:12px 0 0}.signal-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.signal-columns article{padding:0 18px;border-left:2px solid #f3b2ac}.signal-icon{font-size:2rem;color:#dc5b73}.signal-columns h3{margin:10px 0}.signal-columns p{font-size:.9rem;margin:0}.ribbon-cta{background:linear-gradient(110deg,#ffe1d7,#fff0e9);padding:58px 0}.ribbon-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.ribbon-inner h2{margin:12px 0 0}.site-footer{background:white;border-top:1px solid var(--line);padding-top:62px}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr 1.1fr;gap:45px}.footer-brand img{width:130px}.footer-brand p{font-size:.86rem;max-width:210px;margin-top:12px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-grid h2{font-size:.84rem;letter-spacing:0;margin:0 0 8px}.footer-grid a{font-size:.83rem;color:#6c626b}.footer-grid a:hover{color:#ce4c65}.footer-message p{font-size:.85rem;margin:0}.footer-message .footer-biglink{font-size:1.2rem;font-weight:800;color:var(--ink)}.footer-base{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:48px;padding:18px 0 24px;color:#898087;font-size:.76rem}.page-banner{background:#fff1ed;border-bottom:1px solid #f4d9d1}.banner-inner{padding:76px 0 66px}.banner-inner h1{max-width:760px;margin:15px 0}.banner-inner>p{font-size:1.04rem;max-width:750px;line-height:1.8}.section{padding-top:85px;padding-bottom:85px}.tint{background:#faf2f3}.about-feature{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center}.about-copy p{line-height:1.85}.about-quote{padding:40px;background:#f7eff9;border-radius:8px}.quote-mark{font-size:4.2rem;line-height:1;color:#e66d86}.about-quote blockquote{font-size:1.7rem;line-height:1.35;font-weight:720;letter-spacing:-.04em;margin:10px 0 28px}.about-quote>span:last-child{font-size:.65rem;letter-spacing:.1em;font-weight:800;color:#aa6b7b}.section-intro{margin-bottom:28px}.value-band{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e6d7d7;border:1px solid #e6d7d7}.value-band article{background:white;padding:30px}.value-band article>span{font-size:.72rem;color:#cb5b70;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.value-band h3{margin:22px 0 8px}.value-band p{font-size:.9rem;margin:0}.about-close{max-width:800px;text-align:center}.about-close p{margin:0 auto 25px;max-width:600px}.service-directory{display:grid;grid-template-columns:260px 1fr;gap:55px}.directory-intro{position:sticky;top:20px;align-self:start}.directory-intro h2{margin:15px 0}.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.directory-item{border:1px solid #e9dfdc;background:white;padding:25px;border-radius:9px;min-height:225px;display:flex;flex-direction:column}.directory-item:hover{border-color:#f2a0a2;background:#fffaf8}.directory-mark{font-size:1.7rem;color:#e76c80}.directory-item h3{margin:14px 0 7px}.directory-item p{font-size:.87rem;line-height:1.55;margin-bottom:20px}.directory-open{margin-top:auto;font-size:.76rem;color:#c5526b;font-weight:800}.service-footer-note{text-align:center;padding:60px 0;background:#f5eef7}.service-footer-note p{max-width:600px;margin:0 auto 20px}.journey{display:grid;grid-template-columns:300px 1fr;gap:75px}.journey-intro h2{margin:15px 0}.journey-steps{border-left:2px solid #f4c0b4;padding-left:35px}.journey-steps article{position:relative;margin-bottom:40px}.journey-steps article:before{content:'';position:absolute;left:-44px;top:5px;width:16px;height:16px;background:#f56a7a;border:4px solid #fff7f4;border-radius:50%}.journey-steps article:last-child{margin-bottom:0}.step-bubble{font-size:.71rem;font-weight:800;letter-spacing:.1em;color:#d0546a;text-transform:uppercase}.journey-steps h3{font-size:1.3rem;margin:7px 0}.journey-steps p{max-width:600px;margin:0}.approach-question{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:center}.giant-mark{font-size:11rem;line-height:1;color:#f3a0a6;font-weight:850}.approach-question p{max-width:600px}.detail-hero{background:#fff1ec}.detail-hero-1{background:#f7eff8}.detail-hero-2{background:#fdf3e6}.detail-hero-inner{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:center;padding-block:80px}.detail-hero h1{margin:15px 0 18px;max-width:700px}.detail-hero p{max-width:650px;font-size:1.04rem;line-height:1.8}.detail-artwork{height:300px;background:#ffe0d4;border-radius:10px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px}.artwork-1{background:#eedff7}.artwork-2{background:#ffe9cb}.artwork-3{background:#fbe0e9}.detail-artwork:before{content:'';position:absolute;width:250px;height:250px;border:2px solid #ffffffaa;border-radius:50%;transform:translate(50px,-20px)}.artwork-symbol{font-size:7rem;color:#d45b71;line-height:1;position:relative}.artwork-label{position:relative;font-weight:800;font-size:.82rem}.detail-story{display:grid;grid-template-columns:1fr 1.2fr;gap:85px}.detail-story p{line-height:1.85}.detail-list-title{margin:12px 0 25px}.deliverable-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.deliverable{padding:25px;background:white;min-height:170px;border:1px solid #efdfdf}.deliverable-dot{font-size:1.7rem;color:#d55e74}.deliverable h3{font-size:1rem;margin:20px 0 0}.related-section{display:flex;align-items:center;justify-content:space-between;gap:30px}.related-section h2{margin-bottom:8px}.related-section p{margin-bottom:0}.related-link{font-weight:800;color:#cb5367;white-space:nowrap}.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:75px}.contact-aside p{line-height:1.8}.contact-prompt{background:#f8f0f8;padding:24px;margin:30px 0;border-radius:8px}.contact-prompt ul{padding-left:19px;margin-bottom:0;color:#6c626b}.contact-prompt li{margin:5px 0}.contact-disclosure{font-size:.8rem}.contact-disclosure a{color:#ce4d67;text-decoration:underline}.form-panel{background:white;border:1px solid var(--line);padding:32px;border-radius:10px}.form-panel h2{font-size:1.55rem}.form-note{font-size:.82rem}.form-panel label{display:block;font-weight:700;font-size:.84rem;margin:17px 0}.form-panel label span{color:#c74b62}.form-panel input:not([type=checkbox]),.form-panel select,.form-panel textarea{display:block;width:100%;border:1px solid #dcd2d1;border-radius:6px;padding:11px 12px;background:#fffdfa;margin-top:7px;min-width:0;outline-color:var(--pink);font-weight:400}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-panel .check{display:flex;gap:10px;align-items:flex-start;font-weight:450}.form-panel .check input{margin-top:6px}.form-status{font-size:.85rem;margin:10px 0 0}.legal-layout{display:grid;grid-template-columns:230px 1fr;gap:65px}.legal-layout aside{background:#fff1ed;padding:24px;align-self:start}.legal-layout aside p{font-size:.84rem;margin:8px 0 0}.legal-body{max-width:750px}.legal-body h2{font-size:1.35rem;margin:0 0 12px}.legal-body h2:not(:first-child){margin-top:30px}.legal-body p{line-height:1.85}.legal-body a{color:#cf5368;text-decoration:underline}.sitemap-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.sitemap-columns h2{font-size:1.25rem}.sitemap-link{display:block;border-bottom:1px solid var(--line);padding:10px 0;font-size:.9rem}.sitemap-link:hover{color:#ce4c65}
@media(max-width:1024px){.primary-nav{gap:14px}.header-bar{gap:18px}.poster-layout{gap:15px}.poster-visual{transform:scale(.9);transform-origin:center}.moment-grid{gap:45px}.detail-hero-inner{gap:40px}.footer-grid{gap:25px}}
@media(max-width:880px){.container{width:calc(100% - 40px)}.header-bar{min-height:70px}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffdfa;border-bottom:1px solid var(--line);padding:10px 22px 20px;box-shadow:0 18px 30px #2b202015;flex-direction:column;align-items:stretch;gap:0}.primary-nav.open{display:flex}.primary-nav a{padding:12px 5px;border-bottom:1px solid var(--line)}.header-cta{margin-left:auto}.menu-toggle{display:flex}.poster-layout{grid-template-columns:1fr;padding:65px 0 35px;min-height:0}.poster-visual{width:min(520px,100%);margin:auto;transform:none}.intro-sentence-inner{grid-template-columns:1fr;gap:15px}.work-top{gap:20px}.moment-grid,.about-feature,.detail-story,.contact-layout{grid-template-columns:1fr;gap:35px}.moment-graphic{max-width:550px}.service-directory{grid-template-columns:1fr;gap:25px}.directory-intro{position:static}.journey{grid-template-columns:1fr;gap:30px}.detail-hero-inner{grid-template-columns:1fr;gap:30px}.detail-artwork{max-width:560px}.deliverable-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr);gap:35px}.section{padding-top:65px;padding-bottom:65px}}
@media(max-width:600px){.container{width:calc(100% - 32px)}.brand img{width:115px}.header-bar{min-height:66px;gap:10px}.header-cta{font-size:.72rem;padding:8px 10px}.poster-layout{padding:48px 0 20px}.poster-title h1{font-size:clamp(2.8rem,11vw,3.9rem)}.poster-title>p{font-size:.98rem}.poster-actions{flex-wrap:wrap;gap:18px}.poster-visual{height:305px}.disc-main{width:245px;height:245px;right:8%;top:30px}.disc-small{width:95px;height:95px;left:0;bottom:12px}.visual-note{padding:12px;font-size:.55rem}.visual-note b{font-size:.88rem;max-width:140px}.note-top{left:0;top:15px}.note-bottom{right:0;bottom:25px}.visual-star{font-size:5rem}.hero-caption{gap:15px;justify-content:space-between;font-size:.56rem}.intro-sentence{padding:55px 0}.intro-sentence p{font-size:1.55rem}.work-showcase,.moment-section,.signal-section{padding:58px 0}.work-top{grid-template-columns:1fr;gap:14px}.work-top .overline{grid-column:auto}.mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:10px}.tile{padding:18px;min-height:180px}.tile-feature,.tile-soft,.tile-ink,.tile-wide{grid-column:span 2}.tile-feature{grid-row:auto;min-height:240px}.tile-feature h3{font-size:1.65rem;margin-top:35px}.tile h3{font-size:1.08rem;margin-top:15px}.tile p{font-size:.8rem}.tile-narrow{grid-column:span 1}.tile-narrow h3{font-size:.98rem}.tile-narrow p{font-size:.76rem}.moment-graphic{height:270px}.moment-line{width:220px;height:220px}.moment-sticker{font-size:.85rem;padding:10px 15px}.signal-columns{grid-template-columns:1fr;gap:26px}.signal-columns article{padding-left:20px}.ribbon-cta{padding:45px 0}.ribbon-inner{align-items:flex-start;flex-direction:column}.banner-inner{padding:53px 0 45px}.banner-inner>p{font-size:.97rem}.section{padding-top:52px;padding-bottom:52px}.about-quote{padding:25px}.about-quote blockquote{font-size:1.4rem}.value-band{grid-template-columns:1fr}.value-band article{padding:24px}.directory-grid{grid-template-columns:1fr}.directory-item{min-height:0}.journey-steps{padding-left:28px}.journey-steps article:before{left:-37px}.approach-question{grid-template-columns:1fr;gap:0}.giant-mark{font-size:6rem}.detail-hero-inner{padding:50px 0}.detail-artwork{height:220px}.artwork-symbol{font-size:5rem}.deliverable-grid{grid-template-columns:1fr 1fr;gap:9px}.deliverable{padding:16px;min-height:145px}.deliverable h3{font-size:.89rem}.related-section{flex-direction:column;align-items:flex-start}.form-panel{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.legal-layout,.sitemap-columns{grid-template-columns:1fr;gap:24px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-brand,.footer-message{grid-column:1/-1}.footer-base{flex-direction:column;gap:6px;margin-top:35px}}
@media(max-width:360px){.container{width:calc(100% - 24px)}.brand img{width:102px}.header-cta{font-size:.67rem;padding:7px}.tile{padding:14px}.tile-narrow h3{font-size:.9rem}.poster-title h1{font-size:2.65rem}.hero-caption{font-size:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tile,.button{transition:none}}