:root{--paper:#91f8ef;--ink:#143b4b;--red:#135c76;--line:#59b7b4;--muted:#315f69;--serif:"Noto Serif TC","Songti TC",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"PingFang TC","Microsoft JhengHei",sans-serif;font-size:16px;line-height:1.85}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a:hover{color:var(--red)}:focus-visible{outline:3px solid #aa6717;outline-offset:5px}header{height:106px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.brand{font-family:Georgia,serif;font-size:27px;letter-spacing:.06em;line-height:1.2}.brand span{display:block;font-family: sans-serif;font-size:13px;letter-spacing:.15em;margin-top:8px}nav{display:flex;gap:25px;align-items:center;font-size:14px}nav a[aria-current=page]{color:var(--red)}nav details{position:relative}nav summary{cursor:pointer}nav .dropdown{position:absolute;top:40px;left:-30px;background:var(--paper);padding:25px;width:235px;box-shadow:0 8px 25px #0002}nav .dropdown a{display:block;padding:8px 0}.menu{display:none}.skip{position:fixed;top:-100px;background:white;z-index:50;padding:12px}.skip:focus{top:0}.hero{padding:64px 6% 56px}.eyebrow{font-size:13px;letter-spacing:.13em;color:var(--red);font-weight:600;margin:0 0 24px;text-transform:uppercase}.homehero{display:grid;grid-template-columns:1.15fr .85fr;gap:6%;align-items:center;min-height:570px}.hero h1{font-family:var(--serif);font-size:clamp(36px,4.25vw,66px);font-weight:500;line-height:1.43;margin:0 0 26px;letter-spacing:.025em}.hero p.lead{max-width:670px;color:var(--muted);margin:0 0 30px}.hero-art{background:var(--red);color:var(--paper);min-height:400px;display:flex;flex-direction:column;justify-content:space-between;padding:36px;position:relative}.hero-art .big{font-family:Georgia,serif;font-size:clamp(56px,6vw,92px);line-height:1.07}.hero-art .small{border-top:1px solid #ffffff60;padding-top:18px;letter-spacing:.14em;font-size:13px}.hero-art img{width:100%;height:400px;object-fit:cover}.actions{display:flex;gap:18px;flex-wrap:wrap;align-items:center}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;background:var(--red);color:white;border:1px solid var(--red);padding:12px 24px;min-height:48px}.button:hover{background:#76261d;color:white}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.textlink{border-bottom:1px solid var(--ink);padding:8px 0}.strip{border-block:1px solid var(--line);padding:20px 6%;display:flex;justify-content:space-between;gap:20px;letter-spacing:.08em;font-size:13px}.section{padding:76px 6%}.section.alt{background:#e9e8e2}.section.dark{background:#282e2b;color:var(--paper)}.section.dark .eyebrow{color:#dbb3a3}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}h2{font-family:var(--serif);font-size:clamp(28px,3vw,42px);font-weight:500;line-height:1.5;margin:0 0 18px}h3{font-size:22px;font-weight:500;line-height:1.5}p{margin-top:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.grid.two{grid-template-columns:repeat(2,1fr)}.card{border-top:1px solid var(--line);padding:26px 0;display:block}.card .num{font-family:Georgia,serif;color:var(--red);font-size:40px}.card p{color:var(--muted)}.card .tag{font-size:13px;color:var(--red);letter-spacing:.08em}.card:hover h3{color:var(--red)}.split{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%}.statement{font-family:var(--serif);font-size:clamp(25px,3vw,42px);line-height:1.65}.flow{display:flex;flex-wrap:wrap;gap:12px;counter-reset:step}.flow span{flex:1;min-width:120px;border-top:1px solid var(--line);padding:15px 0}.flow span:before{counter-increment:step;content:"0" counter(step);display:block;font:16px Georgia;color:var(--red);margin-bottom:12px}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}.filter{border:1px solid var(--line);background:transparent;padding:8px 18px}.filter[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.notice{padding:15px 20px;background:#ebe7df;border-left:3px solid var(--red);font-size:14px}.project-cover{height:190px;padding:25px;background:#e2dfd6;display:flex;flex-direction:column;justify-content:space-between;font-family:Georgia,serif;font-size:42px;color:#51594d}.project-cover.c1{background:#e3d5ce;color:#763d30}.project-cover.c2{background:#d4dbdc;color:#304c54}.project-cover small{font-family:sans-serif;font-size:12px;letter-spacing:.1em}.meta{font-size:14px;color:var(--muted)}.types{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.type{background:transparent;border:1px solid var(--line);padding:20px 10px;text-align:center}.type[aria-pressed=true]{background:var(--red);color:white}.formwrap{max-width:870px;margin:auto}.steps{display:flex;justify-content:space-between;gap:12px;padding:0;list-style:none;margin:28px 0}.steps li{border-top:3px solid var(--line);padding-top:10px;flex:1;color:var(--muted);font-size:14px}.steps li.active{border-color:var(--red);color:var(--red)}fieldset{border:0;padding:0;margin:0 0 25px}legend{font-size:24px;margin-bottom:20px}label.field{display:block;margin-bottom:22px}label.field input,label.field select,label.field textarea{display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #a5a69f;background:#fff;color:var(--ink);border-radius:0}textarea{min-height:140px;resize:vertical}.choices{display:flex;gap:12px;flex-wrap:wrap}.choice{padding:10px 14px;border:1px solid var(--line);display:flex;align-items:center;gap:8px}.choice:has(input:checked){border-color:var(--red);background:#eee1db}input[type=checkbox],input[type=radio]{width:19px;height:19px;accent-color:var(--red)}.error{color:#9e241b;font-weight:600}.error:empty{display:none}.formactions{display:flex;justify-content:space-between;margin-top:35px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:18px}.faq p{margin-top:15px;color:var(--muted)}footer{padding:48px 6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px}footer p{font-size:12px;color:var(--muted);margin-top:20px}.breadcrumbs{font-size:14px;margin-bottom:30px;color:var(--muted)}.metric{padding:25px;border:1px solid var(--line)}[hidden]{display:none!important}@media(max-width:900px){header{height:86px}.menu{display:block;border:1px solid var(--line);background:transparent;padding:8px 15px}nav{display:none;position:absolute;top:85px;left:0;width:100%;padding:25px 6%;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch}nav.open{display:flex;flex-direction:column;gap:12px}nav .dropdown{position:static;box-shadow:none;padding:10px 15px;width:auto}.homehero{grid-template-columns:1fr 1fr;gap:28px}.hero-art{min-height:350px;padding:25px}.grid{gap:20px}.types{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.hero{padding:40px 6%}.homehero,.split,.grid,.grid.two{grid-template-columns:1fr}.hero h1{font-size:36px}.hero-art{min-height:260px}.hero-art .big{font-size:64px}.section{padding:48px 6%}.sectionhead{display:block}.strip{font-size:12px;flex-wrap:wrap}.grid{gap:5px}.types{grid-template-columns:repeat(2,1fr)}.type:last-child{grid-column:1/-1}.steps{gap:8px}.steps li{font-size:12px}.formactions{gap:12px}.button{padding:11px 16px}.sectionhead .textlink{display:inline-block;margin-top:6px}footer{flex-direction:column}.brand{font-size:25px}.choices{gap:8px}.choice{padding:8px 10px}.project-cover{height:165px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.hero-photo{margin:0;position:relative}.hero-photo:before{content:"";position:absolute;width:80px;height:7px;background:var(--red);top:-7px;left:0}.hero-photo img{width:100%;height:440px;object-fit:cover;display:block}.hero-photo figcaption{font-size:12px;line-height:1.7;margin-top:12px;color:var(--muted)}.hero-photo a{text-decoration:underline}@media(max-width:600px){.hero-photo img{height:280px}}

/* PLAISIR ART brand palette: supplied cyan logo, deep blue readable text. */
header{background:#fff;border-bottom-color:#91f8ef}.brand-logo{display:block;width:205px;height:76px;object-fit:contain}header .brand{line-height:0}.section{background:#f7fffe}.hero{background:#91f8ef}.section.alt{background:#c8faf4}.section.dark{background:#153e50;color:#f4fffe}.section.dark .eyebrow{color:#91f8ef}.section.dark .button{background:#91f8ef;color:#153e50;border-color:#91f8ef}.strip{background:#153e50;color:#bafbf4;border-color:#153e50}.button:hover{background:#0d4258;color:white}.notice{background:#e9fffc;border-left-color:#135c76}.card .num,.card .tag,.eyebrow{color:#135c76}.filter[aria-pressed=true]{background:#135c76;border-color:#135c76}.project-cover{background:#c4eee9;color:#164e5d}.project-cover.c1{background:#c6e6ef;color:#174963}.project-cover.c2{background:#b0e6e6;color:#164851}.choice:has(input:checked){background:#b6f4eb;border-color:#135c76}.type[aria-pressed=true]{background:#135c76}.hero-photo:before{background:#135c76}.hero-photo figcaption{color:#244e5c}footer{background:#fff}nav .dropdown{background:#fff}.error{color:#a12518}@media(max-width:900px){nav{background:#fff}}@media(max-width:600px){.brand-logo{width:178px;height:67px}}

/* Verified projects and documentary photo galleries */
.projects-list{padding-top:34px}.project-intro{margin-bottom:28px}.project-intro p{margin-bottom:8px}.filter-count{font-size:12px;margin-left:9px;opacity:.8}.project-grid{align-items:start;row-gap:42px}.project{border-top:0;padding:0;min-width:0}.project-image{aspect-ratio:1.48;background:#d7eee9;position:relative;overflow:hidden}.project-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}.project:hover .project-image img{transform:scale(1.025)}.project-image.contain img{object-fit:contain;background:#eef7f4}.project-status{position:absolute;bottom:12px;left:12px;background:#fff;color:#153e50;padding:4px 12px;font-size:12px;border:1px solid #d6e7e5}.project .tag{margin:16px 0 9px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.project h3{margin:0 0 12px;font-size:22px;overflow-wrap:anywhere}.project-year{font-size:13px;white-space:nowrap}.project .meta{font-size:13px}.case-hero h1{max-width:1100px;font-size:clamp(32px,3.8vw,54px)}.case-cover{margin-top:32px;position:relative;background:#d1efeb}.case-cover img{display:block;width:100%;height:520px;object-fit:cover}.case-cover.contain img{object-fit:contain}.case-facts{padding-block:38px}.facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 40px;margin:0}.facts-grid div{border-top:1px solid var(--line);padding-top:12px}.facts-grid dt{font-size:13px;color:var(--muted);margin-bottom:5px}.facts-grid dd{margin:0;overflow-wrap:anywhere}.case-note{margin:24px 0 0}.work-list{list-style:none;padding:0;margin:0}.work-list li{display:flex;gap:22px;padding:18px 0;border-top:1px solid var(--line)}.work-list li span{font-family:Georgia,serif;font-size:22px;color:#135c76}.work-list p{margin:0}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}.gallery figure{margin:0;min-width:0}.gallery img{width:100%;height:350px;display:block;object-fit:contain;background:#e9f2ef}.gallery figcaption{font-size:13px;color:var(--muted);margin-top:9px}.breadcrumbs{overflow-wrap:anywhere}.hero-photo a.textlink{display:inline-block;padding:0}.project-grid a:focus-visible{outline-offset:6px}@media(max-width:900px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-cover img{height:400px}}@media(max-width:600px){.project-grid,.gallery,.facts-grid{grid-template-columns:1fr}.project-grid{row-gap:34px}.case-cover img{height:320px}.gallery img{height:290px}.case-hero h1{font-size:32px}.project h3{font-size:23px}.projects-list{padding-top:28px}.filters{gap:8px}.filter{padding:8px 12px}}@media(prefers-reduced-motion:reduce){.project-image img{transition:none}}

.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#send-status{margin-top:24px;min-height:24px;overflow-wrap:anywhere}.button:disabled{opacity:.55;cursor:not-allowed}.notice a,#send-status a{text-decoration:underline}
