/* Original source: styles.css */
@charset "UTF-8";
:root{font-family:Arial,Helvetica,sans-serif;color:#080808;background:#fff;font-synthesis:none;--muted:#646464;--line:#dedede;scroll-behavior:smooth;scroll-padding-top:115px}*{box-sizing:border-box}body{margin:0}h1,h2,h3,p,figure{margin:0}a{color:inherit;text-decoration:none}a,summary{touch-action:manipulation}a:focus-visible,summary:focus-visible{outline:2px solid #111;outline-offset:6px}.shell{width:calc(100% - 96px);max-width:1440px;margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;min-height:120px;gap:32px}.brand{display:flex;align-items:center;gap:15px}.brand-logo{font-size:57px;line-height:1;font-weight:800;letter-spacing:-4px}.brand-name{font-size:14px;font-weight:700;line-height:1.18;letter-spacing:-.3px}.header nav{display:flex;align-items:center;gap:38px;font-size:15px}.header nav>a{padding-block:12px}.header nav>a:not(.pill):hover{text-decoration:underline;text-underline-offset:5px}.pill{display:inline-flex;justify-content:center;align-items:center;border:1px solid #111;border-radius:100px;padding:14px 23px;font-size:15px;line-height:1.35;transition:background .18s,color .18s}.pill:hover{background:#111;color:#fff}.header nav>.pill{padding:13px 22px}.hero{padding-top:52px;padding-bottom:85px}.hero-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px;line-height:1.6;letter-spacing:.65px;color:#555}.hero h1{font-size:clamp(80px,18.5vw,276px);font-weight:700;line-height:1.08;letter-spacing:-.07em;margin:37px 0 38px;white-space:nowrap}.hero-dash{letter-spacing:-.08em}.hero-statement{font-size:clamp(25px,3.55vw,52px);line-height:1.19;font-weight:600;letter-spacing:-.045em;max-width:1280px}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-top:30px}.hero-bottom p{font-size:16px;line-height:1.6;color:var(--muted)}.text-link{font-size:15px;line-height:1.5;padding-bottom:5px;border-bottom:1px solid #111;white-space:nowrap}.text-link:hover{color:#666}.work{padding-top:32px;padding-bottom:110px}.work-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:48px}.work-heading h2{font-size:clamp(44px,6.3vw,92px);font-weight:600;line-height:1.1;letter-spacing:-.065em}.work-heading>p{font-size:14px;line-height:1.6;color:var(--muted);padding-bottom:4px}.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 32px}.project-featured{grid-column:1/-1}.project-top{display:flex;flex-direction:column;gap:9px;margin-bottom:22px}.project-top h3{font-size:36px;line-height:1.15;font-weight:500;letter-spacing:-1.4px}.project-top p{font-size:16px;line-height:1.6;color:#555}.project-featured .project-top{flex-direction:row;align-items:baseline;justify-content:space-between;gap:32px}.project-featured .project-top h3{font-size:46px;letter-spacing:-1.8px}.project-image{width:100%;aspect-ratio:3/2;position:relative;overflow:hidden;background:#f3f3f3}.project-featured .project-image{aspect-ratio:2.1/1}.project-image img{display:block;width:100%;height:100%;object-fit:cover}.image-placeholder{position:absolute;inset:0;display:grid;place-items:center;font-size:14px;color:#777}.project-meta{display:flex;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin-top:17px;font-size:13px;line-height:1.6;color:#555}.project-meta>span{color:#777}.project:not(.project-featured) .project-meta>span{display:none}.section-label{font-size:12px;line-height:1.6;letter-spacing:1px;color:#666}.about{border-top:1px solid var(--line);padding-top:42px;padding-bottom:100px}.about-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:80px;margin-top:35px}.about h2{font-size:clamp(38px,5.8vw,80px);line-height:1.07;font-weight:600;letter-spacing:-.06em}.about-copy{max-width:560px}.about-copy>p{font-size:17px;line-height:1.8;color:#555;margin-bottom:20px}.about-copy>.about-lead{font-size:27px;line-height:1.4;color:#111;letter-spacing:-.7px;margin-bottom:23px}.about-copy>.pill{margin-top:8px}.services{display:grid;grid-template-columns:1fr 1.6fr;gap:80px;border-top:1px solid var(--line);padding-top:48px;padding-bottom:90px}.services-intro h2{font-size:clamp(40px,5vw,70px);line-height:1.06;letter-spacing:-.055em;font-weight:600;margin-top:25px}.services-intro>p:last-child{font-size:16px;line-height:1.7;color:var(--muted);margin-top:22px}.service-list{border-top:1px solid #111}details{border-bottom:1px solid var(--line)}summary{display:grid;grid-template-columns:26px minmax(0,1fr) 22px;gap:22px;align-items:center;padding:26px 0;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary>span{font-size:13px;color:#777}summary h3{font-size:25px;line-height:1.3;font-weight:500;letter-spacing:-.6px}summary i{width:20px;height:20px;position:relative}summary i:before,summary i:after{content:'';background:#111;position:absolute}summary i:before{width:20px;height:1px;top:9px}summary i:after{width:1px;height:20px;left:9px}details[open] summary i:after{display:none}details>p{font-size:16px;line-height:1.75;color:var(--muted);margin-left:48px;padding-bottom:26px;max-width:620px}.process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;padding-bottom:95px}.process article{border-top:1px solid #111;padding-top:21px}.process span{font-size:12px;letter-spacing:.6px;color:var(--muted)}.process h3{font-size:22px;font-weight:500;line-height:1.35;letter-spacing:-.4px;margin-top:25px}.process p{font-size:16px;line-height:1.7;color:var(--muted);margin-top:12px}.contact{border-top:1px solid var(--line);padding-top:40px;padding-bottom:72px}.contact h2{font-size:clamp(54px,9vw,132px);font-weight:600;line-height:1.02;letter-spacing:-.065em;margin-top:35px}.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-top:40px}.contact-email{font-size:20px;padding:18px 28px;overflow-wrap:anywhere;max-width:100%}.contact-bottom p{font-size:15px;line-height:1.6;color:var(--muted)}.footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:30px}.footer .brand-logo{font-size:45px;letter-spacing:-3px}.footer .brand-name{font-size:12px}.footer>p,.footer>a:last-child{font-size:12px;color:var(--muted);line-height:1.6}.skip{position:absolute;top:-100px;left:20px;padding:14px;background:#111;color:#fff;z-index:10}.skip:focus{top:10px}
@media(min-width:1700px){.hero h1{font-size:276px}}
@media(max-width:1050px){.shell{width:calc(100% - 64px)}.header nav{gap:24px}.hero{padding-top:36px}.hero h1{font-size:18vw}.hero-statement{font-size:3.7vw}.about-grid,.services{gap:45px}.about-copy>.about-lead{font-size:23px}.project-meta{gap:8px 16px}.process{gap:28px}.process h3{font-size:20px}summary{gap:17px}summary h3{font-size:22px}}
@media(max-width:760px){:root{scroll-padding-top:24px}.shell{width:calc(100% - 48px)}.header{min-height:100px;gap:20px}.brand-logo{font-size:47px;letter-spacing:-3px}.brand-name{font-size:12px}.header nav{gap:18px;font-size:14px}.header nav>.pill{padding:10px 16px}.hero{padding-top:25px;padding-bottom:58px}.hero h1{font-size:18vw;letter-spacing:-.075em;margin:30px 0}.hero-statement{font-size:clamp(25px,4.2vw,34px);line-height:1.25}.hero-statement br{display:none}.hero-bottom{margin-top:24px;gap:20px}.hero-bottom p{font-size:15px}.hero-meta{font-size:11px;letter-spacing:.3px}.work{padding-top:20px;padding-bottom:70px}.work-heading{gap:24px;margin-bottom:30px}.work-heading h2{font-size:48px}.work-heading>p{font-size:13px}.projects{gap:42px 24px}.project-top h3{font-size:30px}.project-top p{font-size:15px}.project-featured .project-top h3{font-size:36px}.project-featured .project-image{aspect-ratio:3/2}.project-meta{font-size:12px}.project-featured .project-meta>span{display:none}.project:not(.project-featured) .project-meta{flex-direction:column;gap:4px}.about,.services{padding-top:35px;padding-bottom:64px}.about-grid{gap:30px}.about h2{font-size:44px}.about-copy>.about-lead{font-size:21px}.about-copy>p{font-size:16px}.services{grid-template-columns:1fr;gap:30px}.services-intro h2{font-size:46px;margin-top:16px}.services-intro h2 br{display:none}.services-intro>p:last-child{margin-top:16px}.services-intro>p:last-child br{display:none}.process{padding-bottom:65px;gap:24px}.process h3{font-size:19px}.process p{font-size:15px}.contact{padding-top:32px;padding-bottom:55px}.contact h2{font-size:80px;margin-top:24px}.contact-email{font-size:18px;padding:16px 24px}.contact-bottom{margin-top:30px}.footer{flex-wrap:wrap}}
@media(max-width:540px){.shell{width:calc(100% - 40px)}.header{flex-wrap:wrap;gap:16px;padding-block:20px}.header nav{width:100%;justify-content:space-between;gap:12px;font-size:14px}.header nav>.pill{padding:9px 16px}.header nav>a{padding-block:9px}.hero-meta{display:block;font-size:12px}.hero-meta p:last-child{display:none}.hero h1{font-size:18.2vw;margin-top:20px;margin-bottom:24px;line-height:1.1}.hero-statement{font-size:27px;letter-spacing:-1px}.hero-bottom{flex-direction:column;align-items:start;gap:20px}.hero-bottom p{font-size:16px}.work-heading{display:block}.work-heading h2{font-size:43px;letter-spacing:-2.2px}.work-heading>p{margin-top:14px;font-size:14px}.work-heading>p br{display:none}.projects{grid-template-columns:1fr;gap:38px}.project-featured{grid-column:auto}.project-featured .project-top{display:block}.project-featured .project-top h3,.project-top h3{font-size:30px;letter-spacing:-1px}.project-featured .project-top p{margin-top:8px}.project-top{gap:8px;margin-bottom:16px}.project-image,.project-featured .project-image{aspect-ratio:3/2}.project-meta,.project:not(.project-featured) .project-meta{flex-direction:row;font-size:12px;gap:6px 16px;margin-top:13px}.about-grid{grid-template-columns:1fr;gap:26px;margin-top:24px}.about h2{font-size:45px;line-height:1.08}.about-copy>.about-lead{font-size:23px}.about-copy>p{margin-bottom:16px}.services-intro h2{font-size:43px}.services-intro>p:last-child{font-size:16px}summary{grid-template-columns:22px minmax(0,1fr) 20px;gap:14px;padding-block:22px}summary h3{font-size:21px}details>p{margin-left:36px;font-size:16px}.process{grid-template-columns:1fr;gap:30px}.process h3{font-size:22px;margin-top:18px}.process p{font-size:16px;margin-top:8px}.contact h2{font-size:clamp(50px,13.5vw,73px)}.contact-bottom{flex-direction:column;align-items:start;gap:26px}.contact-email{font-size:16px;padding:16px 19px}.contact-bottom p{font-size:14px}.footer{display:grid;grid-template-columns:1fr auto;gap:22px}.footer .brand{grid-column:1 / -1}.footer>p{font-size:11px}.footer>a:last-child{font-size:12px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}

.hero h1{letter-spacing:-.045em}.hero-dash{letter-spacing:-.04em}
/* Navigation and project viewing */
:root{scrollbar-gutter:stable;scroll-padding-top:120px}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible{outline:2px solid #111;outline-offset:5px}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid transparent;transition:border-color .2s;backdrop-filter:blur(12px)}.site-header.is-scrolled{border-bottom-color:var(--line)}.header{min-height:96px}.header nav>a[aria-current="location"]{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}.header nav>.pill[aria-current="location"]{background:#111;color:#fff;text-decoration:none}.menu-toggle{display:none}.hero{padding-top:44px}.hero h1{font-size:clamp(80px,18vw,260px);margin-block:29px 34px}.work-heading h2{letter-spacing:-.05em}.project-image{display:block;color:#111}.project-image img{transition:transform .45s ease}.project-action{position:absolute;right:20px;bottom:20px;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:100px;padding:12px 16px;display:flex;align-items:center;gap:15px;font-size:14px;line-height:1.4;transition:background .2s,color .2s}.project-action>span{font-size:21px;line-height:1}.project-open:hover .project-action,.project-open:focus-visible .project-action{background:#111;color:#fff}.project-open:focus-visible{outline-offset:5px}.concept-note{font-size:13px;line-height:1.65;color:#666;margin-top:34px;max-width:660px}.project-meta{font-size:14px}.project-top h3{font-size:34px}.project-featured .project-image{aspect-ratio:2/1}.service-list details[open]{padding-bottom:1px}.service-list summary:hover h3{color:#555}.dialog-open{overflow:hidden}.project-dialog{width:min(1080px,calc(100vw - 48px));max-height:calc(100dvh - 48px);border:0;background:#fff;color:#111;padding:0;box-shadow:0 18px 70px #0003;overscroll-behavior:contain}.project-dialog::backdrop{background:rgba(0,0,0,.67);backdrop-filter:blur(5px)}.dialog-top{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:24px;background:#fff;padding:23px 30px;border-bottom:1px solid #e5e5e5}.dialog-eyebrow{font-size:12px;line-height:1.5;letter-spacing:.8px;color:#666}.dialog-top h2{font-size:30px;line-height:1.15;font-weight:500;letter-spacing:-1px;margin-top:6px}.dialog-close{border:1px solid #ccc;border-radius:100px;display:flex;align-items:center;gap:15px;padding:11px 16px;background:#fff;font-size:14px}.dialog-close span{font-size:23px;line-height:1}.dialog-close:hover,.gallery-control:hover{background:#111;color:white}.dialog-visual{background:#f2f2f2}.dialog-visual img{display:block;width:100%;height:auto;max-height:55dvh;object-fit:contain}.dialog-info{display:grid;grid-template-columns:1.7fr 1fr;gap:45px;padding:28px 30px}.dialog-info>p{font-size:16px;line-height:1.75;color:#555}.dialog-info>div>p:last-child{font-size:14px;line-height:1.65;margin-top:8px}.dialog-bottom{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 30px}.dialog-bottom>p{font-size:13px;line-height:1.5;color:#666;text-align:center}.gallery-control{border:1px solid #ccc;background:white;border-radius:100px;font-size:14px;padding:12px 18px;line-height:1.4;min-height:44px}.footer>a:last-child{padding-block:12px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.project-open:hover img{transform:scale(1.018)}}
@media(max-width:1050px){.header{min-height:88px}.hero h1{font-size:17.5vw}}
@media(max-width:760px){.header{min-height:88px}.hero{padding-top:30px}.hero h1{font-size:17.5vw}.project-featured .project-image{aspect-ratio:3/2}.project-action{right:14px;bottom:14px;padding:10px 13px;font-size:13px;gap:10px}.project-meta{font-size:13px}.project-dialog{width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}.dialog-info{gap:28px;padding:22px}.dialog-top{padding:20px 22px}.dialog-bottom{padding:18px 22px;gap:12px}}
@media(max-width:1100px){:root{scroll-padding-top:100px}.js .header{flex-wrap:nowrap;min-height:82px;padding-block:15px;position:relative}.js .menu-toggle{display:flex;align-items:center;gap:15px;padding:10px 13px;min-height:44px;border:1px solid #aaa;border-radius:100px;background:#fff;font-size:14px}.menu-icon{width:17px;height:13px;position:relative}.menu-icon:before,.menu-icon:after{content:'';position:absolute;left:0;width:17px;height:1px;background:#111;transition:transform .18s}.menu-icon:before{top:3px}.menu-icon:after{bottom:3px}.menu-open .menu-icon:before{transform:translateY(3px) rotate(45deg)}.menu-open .menu-icon:after{transform:translateY(-3px) rotate(-45deg)}.js .header nav{display:none;position:absolute;top:100%;left:-20px;right:-20px;width:auto;background:white;border-bottom:1px solid var(--line);padding:12px 20px 22px;box-shadow:0 14px 18px #00000008}.js .menu-open .header nav{display:flex;flex-direction:column;align-items:stretch;gap:0}.js .header nav>a{padding:16px 6px;font-size:20px;border-radius:0}.js .header nav>.pill{margin-top:12px;padding:15px;border-radius:100px;font-size:16px}.js .header nav>a[aria-current="location"]{text-underline-offset:6px}.hero h1{font-size:17.5vw;margin-block:22px 25px}.dialog-info{grid-template-columns:1fr;gap:18px}.dialog-bottom{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dialog-bottom>p{grid-column:1 / -1;grid-row:1}.gallery-control{padding:11px 12px}.dialog-close{padding:10px 14px}.dialog-top h2{font-size:27px}.dialog-visual img{max-height:44dvh}.project-dialog{max-height:calc(100dvh - 24px);width:calc(100vw - 24px)}.concept-note{margin-top:28px}.project-action{right:12px;bottom:12px}.hero{padding-top:24px}}
@media(prefers-reduced-motion:reduce){.project-image img,.site-header,.menu-icon:before,.menu-icon:after{transition:none}}

.header nav{gap:28px}.header nav>.division-link{display:flex;align-items:center;gap:10px;border-left:1px solid #ccc;margin-left:2px;padding:5px 0 5px 25px;font-size:12px;line-height:1.2}.division-mark{font-size:31px;font-weight:800;letter-spacing:-2px;line-height:1}.header nav>.division-link:hover{text-decoration:none;opacity:.6}@media(max-width:1100px){.header nav{gap:20px}.header nav>.division-link{padding-left:18px}}@media(max-width:1100px){.js .header nav>.division-link{margin-top:22px;border-left:0;border-top:1px solid #ddd;padding:20px 6px 2px;gap:12px;font-size:14px}.js .header nav{left:-24px;right:-24px}.division-mark{font-size:34px}}
/* Creative Solutions: studio numbers and collaborators */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.agency-stats{border-top:1px solid var(--line);padding-top:26px;padding-bottom:90px}.stats-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.stats-heading h2{font-size:15px;font-weight:500;line-height:1.5}.stats-heading>p{font-size:12px;line-height:1.5;color:#707070}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin:45px 0 0}.stat-item{display:flex;flex-direction:column-reverse;gap:20px}.stat-item dt{font-size:16px;line-height:1.6;color:#555}.stat-item dd{margin:0;font-size:clamp(58px,7.7vw,112px);font-weight:500;letter-spacing:-.055em;line-height:1.05;white-space:nowrap;font-variant-numeric:tabular-nums}.stat-plus{font-size:.52em;display:inline-block;vertical-align:top;line-height:1.2;margin:5px 0 0 8px;font-weight:400}.partners{padding-top:48px;padding-bottom:115px;border-top:1px solid var(--line)}.partners-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:64px}.partners-heading h2{font-size:clamp(45px,6.5vw,90px);line-height:1.07;letter-spacing:-.05em;font-weight:500;margin-top:25px}.partners-intro{max-width:370px;padding-bottom:7px}.partners-intro>p:first-child{font-size:20px;line-height:1.5;letter-spacing:-.3px}.partners-intro>p:last-child{font-size:13px;line-height:1.65;color:#707070;margin-top:20px}.partner-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;border-top:1px solid var(--line)}.partner-grid>li{min-width:0;min-height:225px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;padding:30px 18px}.partner-grid>li:not(:nth-child(3n)){border-right:1px solid var(--line)}.partner-grid>li>p{font-size:12px;line-height:1.6;color:#777}.partner-logo{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:92px;max-width:100%;font-size:42px;font-weight:700;line-height:1;letter-spacing:-1.5px}.partner-logo>span{font-size:10px;line-height:1.6;letter-spacing:2px;font-weight:400;margin-top:12px}.partner-logo img{display:block;width:auto;max-width:100%;max-height:85px;object-fit:contain}.partner-kiyi{letter-spacing:5px;font-weight:500}.partner-dem{font-size:57px;font-weight:700;letter-spacing:-3px}.partner-rota{font-size:41px;letter-spacing:2px;font-weight:800}.partner-numa{font-size:50px;letter-spacing:-2px;font-weight:400}.partner-forma{font-size:34px;letter-spacing:4px;font-weight:600}.partner-ada{font-size:57px;letter-spacing:-2px;font-weight:500}
@media(max-width:760px){.agency-stats{padding-bottom:65px}.stats-grid{gap:22px;margin-top:35px}.stat-item{gap:16px}.stat-item dd{font-size:8.7vw}.stat-item dt{font-size:14px}.partners{padding-top:35px;padding-bottom:75px}.partners-heading{gap:30px;margin-bottom:40px}.partners-heading h2{font-size:52px}.partners-intro>p:first-child{font-size:17px}.partner-grid>li{min-height:200px}.partner-logo{font-size:35px}.partner-dem,.partner-ada{font-size:48px}.partner-forma{font-size:27px;letter-spacing:2px}.partner-numa{font-size:42px}}
@media(max-width:540px){.stats-grid{grid-template-columns:1fr;gap:0;margin-top:20px}.stat-item{flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:20px;padding:23px 0;border-bottom:1px solid #e8e8e8}.stat-item:last-child{border:0}.stat-item dd{font-size:54px;min-width:55%;letter-spacing:-.045em}.stat-item dt{font-size:14px;width:40%;line-height:1.5}.stat-plus{margin-left:5px}.agency-stats{padding-bottom:45px}.partners-heading{display:block;margin-bottom:35px}.partners-heading h2{font-size:49px;margin-top:20px}.partners-intro{margin-top:26px}.partners-intro>p:first-child{font-size:18px}.partners-intro>p:last-child{margin-top:14px}.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-grid>li{min-height:185px;padding:25px 12px;gap:20px}.partner-grid>li:not(:nth-child(3n)){border-right:0}.partner-grid>li:nth-child(odd){border-right:1px solid var(--line)}.partner-logo{font-size:32px;min-height:75px}.partner-dem,.partner-ada{font-size:46px}.partner-numa{font-size:41px}.partner-forma{font-size:25px}.partner-logo>span{font-size:10px;letter-spacing:1.5px}.partner-grid>li>p{font-size:12px}}
.header nav>.demo-admin-link{font-size:12px;border:1px dashed #888;padding:9px 12px;border-radius:100px}.has-demo-admin .header nav{gap:18px}@media(min-width:1101px) and (max-width:1100px){.has-demo-admin .header{gap:15px}.has-demo-admin .brand{gap:10px}.has-demo-admin .brand-logo{font-size:44px}.has-demo-admin .brand-name{font-size:11px}.has-demo-admin .header nav{gap:12px;font-size:13px}.has-demo-admin .header nav>.pill{padding:11px 15px}.has-demo-admin .header nav>.division-link{padding-left:12px}.has-demo-admin .division-mark{font-size:26px}.has-demo-admin .header nav>.demo-admin-link{padding:8px 10px}}@media(max-width:1100px){.js .header nav>.demo-admin-link{border:1px dashed #888;border-radius:100px;font-size:15px;text-align:center;margin-top:20px;padding:12px}}

/* Original source: photography.css */
.brand-sub{font-weight:400;color:#666;font-size:12px}.photo-kicker{display:flex;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:.8px;line-height:1.6}.photo-hero{padding-top:46px;padding-bottom:120px}.hero-composition{position:relative;display:grid;grid-template-columns:1.2fr 1fr;column-gap:7%;align-items:start;margin-top:54px}.photo-label{font-size:12px;letter-spacing:.8px;line-height:1.6;color:#656565}.hero-words h1{font-size:clamp(72px,10.7vw,156px);line-height:.99;letter-spacing:-.06em;font-weight:600;margin:32px 0 38px}.hero-portrait{width:85%;justify-self:end;margin-top:85px}.hero-portrait img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;background:#f4f4f4}.hero-portrait figcaption{display:flex;justify-content:space-between;gap:16px;font-size:12px;line-height:1.5;margin-top:17px;color:#666}.photo-hero-copy{display:flex;align-items:end;gap:40px}.photo-hero-copy p{font-size:16px;line-height:1.6;color:#555}.hero-edition{position:absolute;right:0;top:26px;letter-spacing:3px;font-size:12px;color:#777}.photo-selection{padding-top:65px;padding-bottom:150px}.selection-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:100px}.selection-heading h2{font-size:clamp(52px,7.2vw,104px);line-height:1.02;font-weight:500;letter-spacing:-.055em}.selection-heading>div{max-width:315px;padding-bottom:7px}.selection-heading>div>p:first-child{font-size:18px;line-height:1.6}.sample-note{font-size:13px;color:#707070;line-height:1.65;margin-top:20px}.photo-work img{display:block;width:100%;height:auto;object-fit:cover}.photo-open{display:block;position:relative;background:#f3f3f3;overflow:hidden}.photo-open img{transition:transform .6s}.photo-enlarge{position:absolute;bottom:18px;right:18px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;color:#111;font-size:25px;font-weight:400}.photo-open:hover .photo-enlarge{background:#111;color:white}.photo-work figcaption{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-top:24px}.photo-work h3{font-size:26px;line-height:1.3;font-weight:500;letter-spacing:-.7px;margin-top:7px}.photo-work figcaption>span{font-size:13px;line-height:1.6;color:#777}.work-product{width:65%;margin-left:4%}.work-product img,.work-story img{aspect-ratio:3/2}.story-layout{display:grid;grid-template-columns:1fr 2.2fr;gap:6%;align-items:center;margin-top:155px}.margin-copy{font-size:26px;line-height:1.35;letter-spacing:-.5px;color:#555;padding-left:10%}.portrait-layout{display:grid;grid-template-columns:1fr 1fr;gap:14%;align-items:center;margin-top:165px;padding-inline:10% 3%}.work-portrait img{aspect-ratio:2/3}.portrait-statement{font-size:clamp(35px,5vw,72px);line-height:1.1;letter-spacing:-.045em;font-weight:500}.photo-about{border-top:1px solid #ddd;padding-top:38px;padding-bottom:130px}.photo-about-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;margin-top:48px}.photo-about h2{font-size:clamp(40px,5.7vw,82px);line-height:1.08;letter-spacing:-.055em;font-weight:500}.photo-about-grid>div>p{font-size:17px;line-height:1.8;color:#666;max-width:530px}.photo-about-grid>div>.photo-lead{font-size:26px;line-height:1.4;color:#111;margin-bottom:24px;letter-spacing:-.6px}.photo-services{list-style:none;margin:35px 0 0;padding:0}.photo-services li{display:flex;gap:24px;border-top:1px solid #ddd;padding:18px 0;font-size:18px;line-height:1.4}.photo-services li span{color:#777;font-size:12px;padding-top:4px}.photo-contact{padding-top:42px;padding-bottom:90px;border-top:1px solid #ddd}.photo-contact h2{font-size:clamp(50px,8.8vw,126px);line-height:1.04;font-weight:500;letter-spacing:-.055em;margin-top:45px}.photo-contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:55px}.photo-contact-bottom>.pill{font-size:18px;padding:18px 28px}.photo-contact-bottom>p{font-size:14px;line-height:1.8;color:#666;overflow-wrap:anywhere}.photo-dialog{width:min(1250px,calc(100vw - 40px));max-height:calc(100dvh - 40px);padding:0;border:0;background:#fff}.photo-dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}.photo-dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 25px}.photo-dialog-top p{font-size:14px;line-height:1.5}.photo-close{display:flex;align-items:center;gap:15px;flex-shrink:0;font-size:14px;border:1px solid #bbb;border-radius:30px;background:#fff;padding:10px 16px}.photo-close span{font-size:24px;line-height:1}.photo-dialog>img{display:block;width:100%;max-height:calc(100dvh - 140px);object-fit:contain;background:#f5f5f5}.photo-close:hover{background:#111;color:#fff}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.photo-open:hover img{transform:scale(1.025)}}
@media(max-width:1000px){.photo-hero-copy{display:block}.photo-hero-copy .text-link{display:inline-block;margin-top:22px}.hero-portrait{width:100%;margin-top:95px}.hero-portrait figcaption{flex-direction:column;gap:4px}.photo-hero{padding-bottom:80px}.selection-heading{margin-bottom:70px}.story-layout{margin-top:110px}.portrait-layout{margin-top:110px}.photo-about-grid{gap:6%}.photo-about-grid>div>.photo-lead{font-size:23px}}
@media(max-width:640px){.photo-hero{padding-top:25px;padding-bottom:70px}.photo-kicker{font-size:11px;letter-spacing:.2px;gap:20px}.photo-kicker p:last-child{text-align:right;max-width:130px}.hero-composition{grid-template-columns:1fr;margin-top:38px;gap:0}.hero-words h1{font-size:clamp(65px,18vw,112px);margin-top:22px;line-height:1.01}.hero-words>.photo-label{font-size:11px}.photo-hero-copy{display:flex;justify-content:space-between;gap:20px}.photo-hero-copy p{font-size:15px}.photo-hero-copy .text-link{font-size:14px;margin-top:0}.hero-portrait{margin-top:56px;width:72%;margin-right:0}.hero-portrait figcaption{font-size:12px}.hero-edition{left:0;right:auto;top:auto;bottom:130px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:11px}.photo-selection{padding-top:30px;padding-bottom:80px}.selection-heading{display:block;margin-bottom:48px}.selection-heading h2{font-size:58px}.selection-heading>div{margin-top:28px;max-width:320px}.selection-heading>div>p:first-child{font-size:17px}.sample-note{font-size:13px;margin-top:12px}.work-product{width:100%;margin:0}.photo-work figcaption{margin-top:17px;align-items:start;gap:16px}.photo-work h3{font-size:23px}.photo-work figcaption>span{max-width:90px;text-align:right;font-size:12px}.story-layout{display:block;margin-top:75px}.margin-copy{font-size:25px;padding:0;margin-bottom:35px}.margin-copy br:nth-child(2){display:none}.work-story{width:92%;margin-left:auto}.portrait-layout{margin-top:75px;padding:0;gap:8%;grid-template-columns:1.15fr 1fr;align-items:center}.portrait-statement{font-size:30px}.portrait-layout .photo-work h3{font-size:20px}.photo-about{padding-top:30px;padding-bottom:70px}.photo-about-grid{grid-template-columns:1fr;gap:35px;margin-top:25px}.photo-about h2{font-size:46px}.photo-about-grid>div>.photo-lead{font-size:24px}.photo-about-grid>div>p{font-size:16px}.photo-services li{font-size:17px}.photo-contact{padding-top:30px;padding-bottom:60px}.photo-contact h2{font-size:clamp(42px,10.5vw,65px);margin-top:30px}.photo-contact-bottom{display:block;margin-top:30px}.photo-contact-bottom>.pill{font-size:16px;padding:16px 23px}.photo-contact-bottom>p{margin-top:26px}.photo-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.photo-dialog-top{padding:15px;gap:14px}.photo-dialog-top p{font-size:12px}.photo-close{padding:10px 12px}.photography .footer{grid-template-columns:1fr}.photography .footer .brand{grid-column:auto}.photography .footer>a:last-child{justify-self:start}.photo-enlarge{width:36px;height:36px;bottom:12px;right:12px}}
@media(prefers-reduced-motion:reduce){.photo-open img{transition:none}}
.photography .photo-contact-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:35px;margin-bottom:45px}.photo-contact-intro>p{font-size:20px;line-height:1.5;letter-spacing:-.4px}.photography .contact-options h2{font-size:clamp(35px,4vw,56px);line-height:1.15;letter-spacing:-.045em;margin-top:16px}.photography .contact-demo-note{padding-bottom:0}@media(max-width:640px){.photography .photo-contact-intro{display:block;margin-top:28px;margin-bottom:30px}.photo-contact-intro>p{font-size:18px}.photography .contact-options h2{font-size:40px}}

/* Original source: redesign.css */
/* Tipografi yenilemesi. Özgün stillerin üzerine yazar.
   Gövde ve arayüz: Inter Tight (--font-sans). Büyük başlıklar: Syne (--font-display). */
:root{font-family:var(--font-sans),Arial,Helvetica,sans-serif}

/* Syne başlıklar tek ağırlıkta (500) ve sıkı aralıkla dizilir; boyutlar özgün stillerden gelir. */
.work-heading h2,.partners-heading h2,.services-intro h2,.about h2,.contact h2,.bridge-copy h2,.project-top h3,.dialog-top h2,
.portfolio-hero h1,.portfolio-copy h2,.portfolio-contact h2,
.case-heading h1,.case-story h2,.case-detail-heading h2,.case-next>div>a,
.contact-hero h1,.contact-options h2,
.hero-words h1,.selection-heading h2,.portrait-statement,.photo-about h2,.photo-contact h2{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-weight:500;letter-spacing:-.05em}

/* Üst menüdeki logolar küçültüldü (iki logo da yaklaşık 52px yüksek); çubuk da buna göre kısaldı. */
.header{min-height:80px}
.header .brand-image{width:110px}
.header .brand-image-photo{width:78px}
@media(max-width:1100px){.header .brand-image{width:96px}.header .brand-image-photo{width:68px}.js .header{min-height:74px;padding-block:12px}}
/* Creative menüsündeki yazısız "EOS" işareti. SVG beyazdır; beyaz menüde filtreyle siyaha çevrilir,
   ana sayfanın şeffaf menüsünde (hero-video.css) beyaz kalır. */
.header .brand-image-mark{width:80px;filter:brightness(0)}
@media(max-width:1100px){.header .brand-image-mark{width:68px}}
/* Telefon ve tablette Creative / Photography geçişi açılır menünün içinde değil, menü düğmesinin yanında durur. */
.division-switch-bar{display:none}
@media(max-width:1100px){
 .js .header .division-switch-bar{display:flex;margin-left:auto;border-left:0;padding-left:0;gap:14px}
 .js .header nav .division-switch{display:none}
 /* Açılır menü her genişlikte ekranın iki kenarına kadar uzanır; bağlantılar logoyla aynı hizada başlar. */
 .js .header nav{left:50%;right:auto;width:100vw;transform:translateX(-50%);padding-inline:calc((100vw - 100%)/2 - 6px)}
}
@media(max-width:400px){.js .header{gap:10px}.js .header .division-switch-bar{gap:10px;font-size:12px}}

/* Başlık her genişlikte iki satırdır: ilk satır yaklaşık 9,6em tuttuğu için yazı boyutu
   hero genişliğinin (cqw) onda biridir. */
.creative-hero{container-type:inline-size}
.creative-hero h1{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:min(10cqw,145px);line-height:1.04;letter-spacing:-.05em;font-weight:500;white-space:nowrap;margin:48px 0 52px}
.creative-hero .hero-bottom{max-width:none}
.creative-hero .hero-bottom p{letter-spacing:-.01em}
@media(max-width:760px){.creative-hero h1{letter-spacing:-.05em;margin-block:34px}}
@media(max-width:640px){.creative-hero h1{line-height:1.08;margin-block:28px 30px}}

/* Rakamlarla EOS: sayaçlar sırayla aşağıdan belirir, sayım bitince "+" işareti yerine oturur.
   .stats-armed sınıfını StatsGrid ekler; hareket istemeyen ziyaretçide hiç eklenmez. */
.stat-number{display:inline-block}
.stats-armed .stat-item{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--stat-index) * 150ms)}
.stats-armed .stat-item.is-visible{opacity:1;transform:none}
.stats-armed .stat-plus{opacity:0;transform:translateY(.18em) scale(.7);transition:opacity .45s ease,transform .6s cubic-bezier(.2,1.4,.4,1)}
.stats-armed .is-done .stat-plus{opacity:1;transform:none}

/* Telefonda sayaçlar: sayı üstte, açıklaması altında ve tek satırda. (Özgün düzende açıklama
   sayının yanındaki dar sütunda iki satıra kırılıyordu.) */
@media(max-width:540px){.stat-item{flex-direction:column-reverse;align-items:flex-start;gap:8px;padding:20px 0}.stat-item dd{min-width:0}.stat-item dt{width:auto;white-space:nowrap}}

/* Yumuşak kaydırma (Lenis) etkinken tarayıcının kendi "smooth" davranışı kapatılır; ikisi çakışır. */
html.lenis{scroll-behavior:auto}

/* Sayfanın sağındaki kaydırma çubuğu gizlenir; kaydırma (tekerlek, klavye, dokunma) aynen çalışır.
   Çubuğa yer ayıran özgün scrollbar-gutter da kaldırıldı, içerik tam genişliğe yayılır. */
html{scrollbar-width:none;scrollbar-gutter:auto}
html::-webkit-scrollbar{display:none}

/* Creative <-> Photography geçiş perdesi (bkz. DivisionTransition). Aşağıdan gelip ekranı kaplar,
   gidilen bölümün adı maskeden yükselir, sonra perde yukarı çekilir. Süreler bileşendeki
   COVER_MS / REVEAL_MS ile aynıdır. Photography'ye giderken siyah, Creative'e dönerken beyaz. */
.division-transition{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#0a0a0a;color:#fff;transform:translateY(100%);visibility:hidden;pointer-events:none}
.division-transition[data-target="creative"]{background:#fff;color:#0a0a0a}
.division-transition[data-phase="cover"]{transform:none;visibility:visible;pointer-events:auto;transition:transform .75s cubic-bezier(.76,0,.24,1)}
.division-transition[data-phase="reveal"]{transform:translateY(-100%);visibility:visible;transition:transform .85s cubic-bezier(.76,0,.24,1)}
.division-transition-label{font-size:12px;letter-spacing:3px;opacity:0}
.division-transition-word{overflow:hidden;font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(44px,8vw,120px);font-weight:500;line-height:1.15;letter-spacing:-.05em}
.division-transition-word>span{display:block;transform:translateY(110%)}
.division-transition[data-phase="cover"] .division-transition-label{opacity:.7;transition:opacity .5s ease .35s}
.division-transition[data-phase="cover"] .division-transition-word>span{transform:none;transition:transform .7s cubic-bezier(.2,.7,.1,1) .3s}
.division-transition[data-phase="reveal"] .division-transition-label{opacity:0;transition:opacity .3s ease}
.division-transition[data-phase="reveal"] .division-transition-word>span{transform:translateY(-110%);transition:transform .55s cubic-bezier(.6,0,.8,.2)}

/* Ana sayfadaki iş görselleri siyah beyaz durur; üzerine gelince (ya da klavyeyle odaklanınca)
   renklenir. Dokunmatik ekranda görsel ekranın ortasına gelince renklenir (bkz. ColorOnView). */
.projects .project-image img{filter:grayscale(1);transition:filter .6s ease,transform .45s ease}
.projects .project-image:is(:hover,:focus-visible,.is-colored) img{filter:none}
@media(prefers-reduced-motion:reduce){.projects .project-image img{transition:none}}

/* Müşteri yorumları (bkz. Testimonials): solda başlık, altında üç sütunlu alıntı kartları.
   .is-placeholder: gerçek yorum eklenmeden önceki yer tutucu kutular; soluk ve kesik çizgili. */
.testimonials{border-top:1px solid var(--line);padding-block:38px 96px}
.testimonials-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:54px}
.testimonials-heading h2{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(44px,6.2vw,92px);font-weight:500;letter-spacing:-.05em;line-height:1.05;margin-top:30px}
.testimonials-note{font-size:13px;line-height:1.7;color:var(--muted);text-align:right}
.testimonial-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.testimonial-grid figure{display:flex;flex-direction:column;justify-content:space-between;gap:36px;height:100%;margin:0;padding:32px 30px 28px;border:1px solid var(--line)}
.testimonial-grid blockquote{margin:0}
.testimonial-grid blockquote p{font-size:clamp(18px,1.55vw,22px);line-height:1.5;letter-spacing:-.02em}
.testimonial-stars{display:block;margin-bottom:18px;font-size:17px;letter-spacing:4px;line-height:1;color:#a19080}
.testimonial-grid blockquote p::before{content:'“'}
.testimonial-grid blockquote p::after{content:'”'}
.testimonial-grid figcaption{display:flex;flex-direction:column;gap:3px;border-top:1px solid var(--line);padding-top:18px;font-size:14px;line-height:1.5}
.testimonial-name{font-weight:600}
.testimonial-role{color:var(--muted)}
.testimonial-grid.is-placeholder figure{border-style:dashed}
.testimonial-grid.is-placeholder :is(blockquote,figcaption){opacity:.45}
@media(max-width:1000px){.testimonial-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.testimonials{padding-block:30px 64px}.testimonials-heading{display:block;margin-bottom:34px}.testimonials-note{text-align:left;margin-top:18px}.testimonials-note br{display:none}.testimonial-grid{grid-template-columns:1fr;gap:14px}.testimonial-grid figure{gap:26px;padding:24px 22px 22px}}

/* İletişim formu gönderildikten sonra formun yerinde kalan onay yazısı (bkz. ContactForm). */
.contact-sent{margin-top:35px;border-left:2px solid currentColor;padding:6px 0 6px 20px;outline:0}
.contact-sent h3{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(28px,3vw,40px);font-weight:500;letter-spacing:-.04em;line-height:1.15}
.contact-sent p{max-width:470px;margin-top:14px;font-size:16px;line-height:1.7;color:#555}
.photo-trial .contact-sent p{color:var(--trial-soft)}
.mail-submit:disabled{opacity:.6;cursor:progress}
/* Bot tuzağı: ekranın dışına taşınır. display:none kullanılmaz; bazı botlar gizli alanları atlar. */
.form-trap{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

/* 404 sayfası (bkz. app/(site)/not-found.tsx). */
.not-found{padding-block:44px 110px}
.not-found h1{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(110px,22vw,320px);font-weight:500;letter-spacing:-.06em;line-height:.95;margin-block:30px 34px}
.not-found-lead{font-size:clamp(25px,3vw,42px);line-height:1.3;letter-spacing:-.9px}
.not-found-text{max-width:520px;margin-top:22px;font-size:17px;line-height:1.7;color:#666}
.not-found-links{list-style:none;margin:44px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:540px){.not-found{padding-block:25px 70px}.not-found-links .pill{padding-inline:20px}}

/* Prizma geçişi (bkz. DivisionTransition). Tarayıcı eski ve yeni sayfanın görüntüsünü birlikte
   tutar (View Transitions): yeni sayfa, soldan sağa ilerleyen ve ucu prizma biçiminde olan bir
   kesimle açılır; aynı hızda ilerleyen saydam prizma kesimin üstünde durur.
   --prism-s: prizmanın taban kenarı, --prism-h: yarı yüksekliği. İki animasyonun süresi ve
   eğrisi aynı olmalı, yoksa prizma kesimden ayrılır.
   --prism-ease: hızlı girer, ekranın ortasında yavaşlar, hızlanarak çıkar (ortadaki hız, en hızlı
   anın yaklaşık üçte biri). */
:root{--prism-s:min(44vh,56vw);--prism-h:88vh;--prism-w:calc(var(--prism-s) * 1.5);--prism-from:calc(var(--prism-w) * -.6);--prism-to:calc(100vw + var(--prism-w) * .9);--prism-time:2.8s;--prism-ease:linear(0,.02 5%,.07 10%,.14 15%,.22 20%,.295 25%,.36 30%,.41 35%,.445 40%,.475 45%,.5 50%,.525 55%,.555 60%,.59 65%,.64 70%,.705 75%,.78 80%,.86 85%,.93 90%,.98 95%,1)}
.prism-stage,.prism-rays{display:none}
/* Beyaz ışık huzmeleri: ekranı kaplayan katmanın ortasından çıkar, katman prizmayla birlikte kayar.
   Yalnızca prizma ekranın ortasındayken görünür (prism-rays-glow), bu sırada yavaşça döner. */
html.prism-live .prism-rays{display:block;position:fixed;inset:0;z-index:300;pointer-events:none;view-transition-name:prism-rays;filter:blur(26px);background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.95),rgba(255,255,255,.6) 12%,rgba(255,255,255,.24) 30%,transparent 55%),repeating-conic-gradient(from 8deg at 50% 50%,rgba(255,255,255,.1) 0deg,rgba(255,255,255,.62) 7deg,rgba(255,255,255,.1) 15deg,rgba(255,255,255,.42) 23deg,rgba(255,255,255,.1) 31deg,rgba(255,255,255,.7) 41deg,rgba(255,255,255,.1) 52deg);mask-image:radial-gradient(circle at 50% 50%,#000 0,rgba(0,0,0,.75) 16%,rgba(0,0,0,.28) 44%,transparent 72%)}
html.prism-transition::view-transition-old(prism-rays){display:none}
html.prism-transition::view-transition-new(prism-rays){mix-blend-mode:normal;animation:prism-rays-turn var(--prism-time) linear both}
html.prism-transition::view-transition-group(prism-rays){animation:prism-rays-pan var(--prism-time) var(--prism-ease) both,prism-rays-glow var(--prism-time) linear both}
@keyframes prism-rays-pan{from{transform:translateX(calc(var(--prism-from) - 50vw))}to{transform:translateX(calc(var(--prism-to) - 50vw))}}
@keyframes prism-rays-glow{0%,30%{opacity:0}47%,53%{opacity:1}72%,100%{opacity:0}}
@keyframes prism-rays-turn{from{transform:rotate(-14deg) scale(.85)}50%{transform:rotate(0deg) scale(1.08)}to{transform:rotate(14deg) scale(.85)}}
/* Prizma, eski sayfanın görüntüsü alındıktan sonra (.prism-live) açılır; daha önce açılırsa yeni
   sayfa yüklenene dek ekranın solunda belirip kaybolur. */
html.prism-live .prism-stage{display:block;position:fixed;left:0;top:0;z-index:301;width:var(--prism-w);height:100vh;pointer-events:none;perspective:1500px;view-transition-name:prism}
.prism-body{position:absolute;left:50%;top:50%;width:0;height:0;transform-style:preserve-3d;animation:prism-spin 2.8s linear infinite}
/* Sekiz üçgen yüz: dördü yukarı, dördü aşağı bakan iki piramit. Taban kare olduğu için 90 derecelik
   dönüş kusursuz tekrar eder. Yüzler renksiz cam gibidir: neredeyse saydam gövde, hafif yeşilimsi
   cam tonu, köşede ve ortada birer ışık yansıması. Arkadaki yüzler de görünür. */
.prism-face{position:absolute;left:calc(var(--prism-s) / -2);width:var(--prism-s);height:hypot(var(--prism-h),calc(var(--prism-s) / 2));--tilt:atan2(calc(var(--prism-s) / 2),var(--prism-h));background:linear-gradient(calc(118deg + var(--i) * 41deg),rgba(255,255,255,.36) 0%,rgba(216,238,238,.08) 20%,rgba(196,226,230,.04) 47%,rgba(255,255,255,.24) 52.5%,rgba(204,230,232,.05) 58%,rgba(96,128,134,.2) 100%)}
/* Camın kenarları: her yüzün çevresinde ince, parlak bir çerçeve (ortası boş üçgen). Açık renkli
   ucu koyu zeminde, koyu yeşilimsi ucu beyaz zeminde görünür; komşu yüzlerin kenarları üst üste
   binip keskin cam kırıklarını verir. Çerçeve yalnızca eğik kenarlardadır; iki piramidin birleştiği
   yatay kenarda çizgi yoktur. Alt yüzlerin renkleri üsttekilerin dikey ayna görüntüsüdür; böylece
   birleşme yerinde ton farkı da oluşmaz. */
.prism-face::after{content:'';position:absolute;inset:0;background:linear-gradient(calc(40deg + var(--i) * 53deg),rgba(255,255,255,.5),rgba(170,206,208,.26) 48%,rgba(38,66,70,.28))}
.prism-face.is-upper::after{clip-path:polygon(evenodd,50% 0,100% 100%,0 100%,50% 0,50% 1.3%,1.7% 100%,98.3% 100%,50% 1.3%)}
.prism-face.is-lower::after{background:linear-gradient(calc(140deg - var(--i) * 53deg),rgba(255,255,255,.5),rgba(170,206,208,.26) 48%,rgba(38,66,70,.28));clip-path:polygon(evenodd,0 0,100% 0,50% 100%,0 0,1.7% 0,50% 98.7%,98.3% 0,1.7% 0)}
.prism-face.is-upper{bottom:0;transform-origin:50% 100%;clip-path:polygon(50% 0,100% 100%,0 100%);transform:rotateY(calc(var(--i) * 90deg)) translateZ(calc(var(--prism-s) / 2)) rotateX(var(--tilt))}
.prism-face.is-lower{top:0;transform-origin:50% 0;clip-path:polygon(0 0,100% 0,50% 100%);transform:rotateY(calc(var(--i) * 90deg)) translateZ(calc(var(--prism-s) / 2)) rotateX(calc(var(--tilt) * -1));background:linear-gradient(calc(62deg - var(--i) * 41deg),rgba(255,255,255,.36) 0%,rgba(216,238,238,.08) 20%,rgba(196,226,230,.04) 47%,rgba(255,255,255,.24) 52.5%,rgba(204,230,232,.05) 58%,rgba(96,128,134,.2) 100%)}
@keyframes prism-spin{to{transform:rotateY(90deg)}}
html.prism-transition::view-transition-old(root){animation:none}
html.prism-transition::view-transition-new(root){animation:prism-wipe var(--prism-time) var(--prism-ease) both;mix-blend-mode:normal}
html.prism-transition::view-transition-old(prism){display:none}
html.prism-transition::view-transition-new(prism){animation:none;mix-blend-mode:normal}
html.prism-transition::view-transition-group(prism){animation:prism-pan var(--prism-time) var(--prism-ease) both}
/* Kesimin sağ kenarı prizmanın sağ yarısını izler: prizmanın içinden bakınca yeni sayfa görünür. */
@keyframes prism-wipe{
 from{clip-path:polygon(0 0,calc(var(--prism-from) + var(--prism-s) * .25) 0,calc(var(--prism-from) + var(--prism-s) * .6) 50%,calc(var(--prism-from) + var(--prism-s) * .25) 100%,0 100%)}
 to{clip-path:polygon(0 0,calc(var(--prism-to) + var(--prism-s) * .25) 0,calc(var(--prism-to) + var(--prism-s) * .6) 50%,calc(var(--prism-to) + var(--prism-s) * .25) 100%,0 100%)}
}
@keyframes prism-pan{from{transform:translateX(calc(var(--prism-from) - var(--prism-w) / 2))}to{transform:translateX(calc(var(--prism-to) - var(--prism-w) / 2))}}
/* Ters yön (html.prism-reverse; Creative'e dönerken): prizma sağdan girip soldan çıkar, yeni sayfa
   prizmanın sağında açılır. Değerler yukarıdakilerin ayna görüntüsüdür. */
:root{--prism-rfrom:calc(100vw + var(--prism-w) * .6);--prism-rto:calc(var(--prism-w) * -.9)}
html.prism-reverse::view-transition-new(root){animation-name:prism-wipe-reverse}
html.prism-reverse::view-transition-group(prism){animation-name:prism-pan-reverse}
html.prism-reverse::view-transition-group(prism-rays){animation-name:prism-rays-pan-reverse,prism-rays-glow}
@keyframes prism-wipe-reverse{
 from{clip-path:polygon(100% 0,calc(var(--prism-rfrom) - var(--prism-s) * .25) 0,calc(var(--prism-rfrom) - var(--prism-s) * .6) 50%,calc(var(--prism-rfrom) - var(--prism-s) * .25) 100%,100% 100%)}
 to{clip-path:polygon(100% 0,calc(var(--prism-rto) - var(--prism-s) * .25) 0,calc(var(--prism-rto) - var(--prism-s) * .6) 50%,calc(var(--prism-rto) - var(--prism-s) * .25) 100%,100% 100%)}
}
@keyframes prism-pan-reverse{from{transform:translateX(calc(var(--prism-rfrom) - var(--prism-w) / 2))}to{transform:translateX(calc(var(--prism-rto) - var(--prism-w) / 2))}}
@keyframes prism-rays-pan-reverse{from{transform:translateX(calc(var(--prism-rfrom) - 50vw))}to{transform:translateX(calc(var(--prism-rto) - 50vw))}}
/* Footer (bkz. PageShell > SiteFooter): tam genişlikte koyu blok. Üstte logo ve tanıtım, site
   haritası ve iletişim; altta ince çizgiyle ayrılan telif satırı. İki bölümde de aynıdır. */
.site-footer{background:#0b0b0b;color:#f2f2f2}
.site-footer-top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2.5fr) minmax(0,.8fr);gap:50px 60px;padding-block:76px 68px}
.site-footer .brand{display:inline-block}
.site-footer .brand-image{display:block;width:150px;height:auto;filter:brightness(0) invert(1)}
.site-footer .brand-image-photo{width:106px}
.site-footer-brand>p{max-width:290px;margin-top:24px;font-size:15px;line-height:1.65;color:#a0a0a0}
.site-footer-label{font-size:12px;letter-spacing:.65px;text-transform:uppercase;color:#8f8f8f;margin-bottom:18px}
.footer-map{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:30px 40px}
.footer-map a>span{color:#8f8f8f}
@media(max-width:760px){.footer-map{grid-template-columns:1fr 1fr}.footer-map>div:last-child{grid-column:1 / -1}}
.footer-map ul{list-style:none;margin:0;padding:0;display:grid;gap:11px;font-size:16px;line-height:1.4}
.footer-map a{color:#e2e2e2}
.footer-map a:hover,.site-footer-bottom a:hover{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.site-footer-contact>p:not(.site-footer-label){font-size:16px;line-height:1.6;color:#e2e2e2}
.site-footer-contact .text-link{display:inline-block;margin-top:20px;border-bottom-color:#f2f2f2}
.site-footer-contact .text-link:hover{color:#b5b5b5}
.site-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #2a2a2a;padding-block:24px 28px;font-size:13px;line-height:1.6;color:#8f8f8f}
.site-footer :is(a,button):focus-visible{outline-color:#fff}
/* Sosyal medya bağlantıları: "Bize yazın"ın altında, yan yana. */
.site-footer-social{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:15px}
.site-footer-social a{color:#e2e2e2}
.site-footer-social a:hover{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.site-footer-social a>span{color:#8f8f8f}
/* Telif yazısının yanındaki küçük yapımcı imzası. */
.site-footer-credit{margin-left:14px;padding-left:14px;border-left:1px solid #2a2a2a;font-size:11px;letter-spacing:.3px;color:#6f6f6f;white-space:nowrap}
@media(max-width:540px){.site-footer-credit{display:block;margin:4px 0 0;padding:0;border:0}}
/* Alt satırın ortasındaki yasal metin bağlantıları. */
.site-footer-legal{display:flex;flex-wrap:wrap;gap:6px 22px;margin-inline:auto}
/* Metin içindeki bağlantılar (yasal sayfalar, iletişim formu notu): altı çizili, rengi çevresinden gelir. */
.legal-link{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.legal-link:hover{text-decoration-thickness:2px}
.legal-page .blog-post-hero h1{font-size:clamp(38px,5.4vw,80px)}
@media(max-width:760px){.site-footer-bottom{flex-wrap:wrap}.site-footer-legal{order:3;width:100%;margin-inline:0}}
/* Koyu temalı Photography sayfalarında footer zeminden bir ton açık durur. */
.photo-trial .site-footer{background:#141414}
@media(max-width:1000px){.site-footer-top{grid-template-columns:1fr 1fr;gap:44px 40px;padding-block:60px 52px}.site-footer-brand{grid-column:1 / -1}.footer-map{grid-column:1 / -1}.site-footer-contact{grid-column:1 / -1}}
/* Hizmetler sayfaları (bkz. ServicesPages): her hizmet numara, ad ve kısa açıklamadan oluşan bir satır. */
.service-rows{padding-bottom:70px}
.service-rows>.section-label{border-top:1px solid var(--line);padding-top:26px;margin-bottom:26px}
.service-row{display:grid;grid-template-columns:70px minmax(0,1.15fr) minmax(0,1fr);gap:30px 50px;align-items:start;border-top:1px solid var(--line);padding-block:34px 38px}
.service-row-number{font-size:13px;color:var(--muted);line-height:1.6;padding-top:12px}
.service-row h2{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(27px,3.1vw,46px);font-weight:500;letter-spacing:-.045em;line-height:1.1}
.service-row>div>p{max-width:520px;font-size:17px;line-height:1.7;color:#555}
.service-row h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
.service-row-more{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:11px 18px;font-size:14px}
/* Hizmet detay sayfası: bölge sayfalarının düzenini kullanır; başlık tek satır hizmet adıdır. */
.service-detail-page .region-hero h1{font-size:clamp(40px,7vw,112px);max-width:14em;margin-block:40px 36px}
.about-copy h3{font-size:15px;font-weight:600;line-height:1.5;margin:36px 0 14px}
.about-copy ul{margin:0 0 6px;padding-left:20px;font-size:17px;line-height:1.8;color:#555}
.about-copy .service-area-note{margin-top:30px;padding-top:24px;border-top:1px solid var(--line);font-size:15px}
.photo-trial .about-copy ul{color:var(--trial-soft)}
.photo-trial .service-row>div>p{color:var(--trial-soft)}
.services-more{display:inline-block;margin-top:34px}
@media(max-width:760px){.service-rows{padding-bottom:44px}.service-row{grid-template-columns:44px minmax(0,1fr);gap:12px 16px;padding-block:26px 30px}.service-row-number{padding-top:7px}.service-row>div{grid-column:2}.service-row>div>p{font-size:16px}}

/* Bölge sayfaları (bkz. RegionPages): açılışta şehir + hizmet başlığı, altında tanıtım cümlesi. */
.region-hero{padding-top:44px;padding-bottom:70px}
.region-hero h1{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(44px,8.4vw,128px);font-weight:500;letter-spacing:-.05em;line-height:1.02;margin-block:44px 40px}
.region-lead{max-width:760px;font-size:clamp(20px,2vw,27px);line-height:1.45;letter-spacing:-.02em;color:#333}
.region-faq{border-top:1px solid var(--line)}
.region-related{border-top:1px solid var(--line);padding-block:38px 70px}
.region-related ul{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 60px}
.region-related li{border-bottom:1px solid var(--line)}
.region-related a{display:block;padding:20px 0;font-size:19px;line-height:1.4;letter-spacing:-.02em}
.region-related a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
@media(max-width:760px){.region-hero{padding-top:28px;padding-bottom:48px}.region-hero h1{margin-block:32px 28px}.region-related ul{grid-template-columns:1fr}.region-related a{font-size:17px;padding:16px 0}}
/* Koyu temalı (Photography) bölge sayfalarında özgün stillerin sabit grileri açılır. */
.photo-trial .region-lead{color:#e8e8e8}
.photo-trial .about-copy>p{color:var(--trial-soft)}
.photo-trial .about-copy>.about-lead{color:#f2f2f2}
.photo-trial summary>span{color:var(--trial-dim)}
.photo-trial .service-list summary:hover h3{color:#b5b5b5}

@media(max-width:540px){.site-footer-top{gap:36px;padding-block:48px 40px}.site-footer .brand-image{width:132px}.site-footer .brand-image-photo{width:94px}.footer-map{gap:24px}.footer-map ul{font-size:15px}.site-footer-bottom{padding-block:20px 24px;font-size:12px}}
/* Telefonda sağ altta beliren WhatsApp düğmesi (WhatsAppButton.tsx). Geniş ekranda gösterilmez. */
.whatsapp-fab{display:none}
@media(max-width:760px){
 .whatsapp-fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:30;display:flex;align-items:center;gap:9px;min-height:48px;padding:0 18px 0 15px;border-radius:100px;background:#111;color:#fff;font-size:14px;font-weight:500;line-height:1;box-shadow:0 8px 24px rgba(0,0,0,.22);opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .25s,transform .25s}
 .whatsapp-fab.is-shown{opacity:1;transform:none;pointer-events:auto}
 .whatsapp-fab svg{color:#25d366;flex-shrink:0}
 .whatsapp-fab:focus-visible{outline:2px solid #111;outline-offset:3px}
 .photo-trial .whatsapp-fab{background:#f2f2f2;color:#111;box-shadow:0 8px 24px rgba(0,0,0,.5)}
 .photo-trial .whatsapp-fab svg{color:#1da851}
 .photo-trial .whatsapp-fab:focus-visible{outline-color:#fff}
}
@media(prefers-reduced-motion:reduce){.whatsapp-fab{transition:none}}
/* Instagram: menüde ikon (telefonda menünün altında satır), iletişimde DM düğmesi, Photography'de takip bandı,
   footer'da ikonlu bağlantılar. */
.header nav>.nav-instagram{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-left:-8px;padding:0;border-radius:50%;transition:opacity .2s}
.header nav>.nav-instagram:hover{opacity:.6;text-decoration:none}
.nav-instagram-label{display:none}
@media(max-width:1100px){
 .js .header nav>.nav-instagram{width:auto;height:auto;justify-content:flex-start;gap:14px;margin:20px 0 0;padding:18px 6px 4px;border-top:1px solid #ddd;border-radius:0;font-size:16px}
 .js .header nav>.nav-instagram:hover{opacity:1}
 .js .nav-instagram-label{display:flex;flex-direction:column;gap:3px;line-height:1.3}
 .js .nav-instagram-label small{font-size:13px;color:#777}
 .js .photo-trial .header nav>.nav-instagram{border-top-color:var(--trial-rule)}
 .js .photo-trial .nav-instagram-label small{color:var(--trial-dim)}
}
.phone-actions .instagram-button{display:inline-flex;align-items:center;gap:9px;margin-top:0}
.instagram-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);align-items:end;gap:40px 60px;padding-block:90px;border-top:1px solid var(--trial-rule,#ddd)}
.instagram-band h2{margin-top:18px;font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(42px,6vw,88px);font-weight:500;line-height:1.02;letter-spacing:-.055em}
.instagram-band-action p{font-size:16px;line-height:1.6;color:var(--trial-soft,#555)}
.instagram-band-link{display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:16px 24px;font-size:16px;background:#f2f2f2;border-color:#f2f2f2;color:#111}
.instagram-band-link:hover{background:#fff;border-color:#fff;color:#111}
@media(max-width:760px){.instagram-band{grid-template-columns:minmax(0,1fr);padding-block:60px}.instagram-band br{display:none}}
.site-footer-social a{display:inline-flex;align-items:center;gap:9px;padding:9px 15px 9px 12px;border:1px solid #3a3a3a;border-radius:100px;color:#e2e2e2;transition:border-color .2s,color .2s}
.site-footer-social a:hover{border-color:#fff;color:#fff;text-decoration:none}
@media(prefers-reduced-motion:reduce){.header nav>.nav-instagram,.site-footer-social a{transition:none}}

/* ── Arayüz rötuşları ─────────────────────────────────────────────────────────────────────────── */
/* Küçük yazılar: etiketler ve alt satırlar bir kademe büyük ve bir ton koyu. Photography'nin koyu
   temasındaki renkler photo-trial.css'te kalır; burada yalnızca boyut değişir. */
.section-label{font-size:13px;color:#555}
.portfolio-meta{font-size:13px;color:#555}
.project-meta{font-size:14px;color:#444}
.process span{font-size:13px;color:#555}
.partner-grid>li>p,.partner-track>li>p{font-size:13px}
.service-row-number{font-size:14px}
.work-heading-aside p{font-size:15px;color:#555}
.stats-heading h2{font-size:13px;font-weight:400;letter-spacing:1px;text-transform:uppercase;color:#555}
.portfolio-intro>div>p{font-size:14px;color:#555}
.contact-bottom p{color:#555}
@media(max-width:640px){.section-label,.portfolio-meta,.process span{font-size:12px}.project-meta{font-size:13px}}
.photo-trial :is(.section-label,.portfolio-meta,.process span){color:var(--trial-dim)}
.photo-trial .portfolio-intro>div>p{color:var(--trial-soft)}

/* Kapanış çağrısı: footer'la birleşen koyu bant. Başlığın kendisi bağlantıdır; üzerine gelince altı
   çizilir ve ok ilerler. Bant, sayfa genişliğindeki .shell'i ekranın iki kenarına taşır. */
.contact,.portfolio-contact{border-top:0;background:#0b0b0b;color:#f2f2f2;box-shadow:0 0 0 100vmax #0b0b0b;clip-path:inset(0 -100vmax);padding-block:84px 96px}
:is(.contact,.portfolio-contact) .section-label{color:#8f8f8f}
:is(.contact,.portfolio-contact) .pill{background:#f2f2f2;border-color:#f2f2f2;color:#111}
:is(.contact,.portfolio-contact) .pill:hover{background:#fff;border-color:#fff;color:#111}
.contact .contact-bottom p{color:#a0a0a0}
.cta-headline{color:inherit;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 .045em no-repeat;transition:background-size .6s cubic-bezier(.2,.7,.1,1)}
.cta-arrow{display:inline-block;margin-left:.2em;font-family:var(--font-sans),Arial,sans-serif;font-weight:300;transition:transform .5s cubic-bezier(.2,.7,.1,1)}
@media(hover:hover){.cta-headline:hover{background-size:100% .045em}.cta-headline:hover .cta-arrow{transform:translateX(.22em)}}
.cta-headline:focus-visible{outline:2px solid currentColor;outline-offset:8px}
.site-footer{border-top:1px solid #1e1e1e}
.photo-trial .portfolio-contact{background:transparent;box-shadow:none;clip-path:none}
@media(max-width:760px){.contact,.portfolio-contact{padding-block:56px 64px}}

/* Hizmet satırları: üzerine gelince zemin belirir, başlık sağa kayar, "Detaylar" dolar. */
.service-rows{isolation:isolate}
.service-row{position:relative}
.service-row::before{content:'';position:absolute;inset:0 -24px;z-index:-1;background:#f3f3f1;opacity:0;transition:opacity .3s}
.service-row h2{transition:transform .5s cubic-bezier(.2,.7,.1,1)}
.service-row-more>span{display:inline-block;transition:transform .35s cubic-bezier(.2,.7,.1,1)}
@media(hover:hover){
 .service-row:hover::before{opacity:1}
 .service-row:hover h2{transform:translateX(14px)}
 .service-row:hover .service-row-more{background:#111;color:#fff}
 .service-row:hover .service-row-more>span{transform:translateX(5px)}
 .photo-trial .service-row::before{background:#161616}
 .photo-trial .service-row:hover .service-row-more{background:#f2f2f2;border-color:#f2f2f2;color:#111}
}

/* Sayaçlar: sütunların arasında ince çizgi; rakamlar bölümü boydan boya doldurur. */
@media(min-width:761px){
 .stats-grid{gap:0}
 .stat-item{padding:6px 32px 0;border-left:1px solid var(--line)}
 .stat-item:first-child{padding-left:0;border-left:0}
}

/* İşletmeler: yavaş kayan şerit. İki kopya art arda durur; şerit kendi genişliğinin yarısı kadar
   kayınca başa döner. Üzerine gelince durur. */
.partner-marquee{display:flex;overflow:hidden;border-block:1px solid var(--line);mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}
.partner-track{flex:none;display:flex;margin:0;padding:0;list-style:none;animation:partner-slide 38s linear infinite}
.partner-track>li{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:clamp(220px,24vw,340px);min-height:190px;border-right:1px solid var(--line);text-align:center}
.partner-track>li>p{color:#555;line-height:1.5}
@media(hover:hover){.partner-marquee:hover .partner-track{animation-play-state:paused}}
@keyframes partner-slide{to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){
 .partner-marquee{display:block;mask-image:none;border-bottom:0}
 .partner-track{animation:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
 .partner-track[aria-hidden]{display:none}
 .partner-track>li{width:auto;border-bottom:1px solid var(--line)}
}
@media(max-width:640px){.partner-track>li{width:200px;min-height:150px}.partner-track{animation-duration:28s}}

/* Bölüm başlıkları: kaydırınca maskenin altından yükselerek belirir (HeadingReveal.tsx). */
.heading-reveal{clip-path:inset(0 -5% 100% -5%);transform:translateY(.45em);opacity:0}
.heading-reveal.is-revealed{clip-path:inset(-10% -5% -25% -5%);transform:none;opacity:1;transition:clip-path 1.1s cubic-bezier(.2,.7,.1,1),transform 1.1s cubic-bezier(.2,.7,.1,1),opacity .5s ease}

/* Hizmet detay sayfası: "Bu hizmette neler var?" başlığının altındaki görsel alanı. Görsel panelden
   yüklenir; yüklenmediyse aynı yerde boş bir kutu durur. Geniş ekranda metin kayarken yerinde kalır. */
.service-about-side{min-width:0}
.service-image{margin:44px 0 0;max-width:560px}
.service-image img{display:block;width:100%;height:auto;max-height:680px;object-fit:cover}
.service-image.is-empty{aspect-ratio:4/5;max-height:680px;background:#efefed}
.photo-trial .service-image.is-empty{background:#161616}
@media(min-width:1001px){.service-about-side{position:sticky;top:110px;align-self:start}}
@media(max-width:760px){.service-image{margin-top:26px;max-width:none}.service-image.is-empty{aspect-ratio:4/3}}

/* İşletme logoları (panelden yüklenen görsel): kutuya sığar, siyah-beyaz durur, üzerine gelince renklenir. */
.partner-logo.has-image{width:100%;max-width:210px;padding-inline:8px}
.partner-logo.has-image img{width:auto;height:auto;max-width:100%;max-height:84px;object-fit:contain;filter:grayscale(1);transition:filter .3s}
@media(hover:hover){.partner-track>li:hover .partner-logo.has-image img,.partner-grid>li:hover .partner-logo.has-image img{filter:none}}
@media(max-width:640px){.partner-logo.has-image{max-width:150px}.partner-logo.has-image img{max-height:60px}}

/* Şeritteki işletme kutusu: içerik .partner-card içinde durur; bağlantısı varsa kutunun tamamı tıklanır. */
.partner-track>li{align-items:stretch;gap:0}
.partner-card{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-width:0;padding:18px 12px;color:inherit;text-decoration:none;transition:background-color .25s}
.partner-card>p{font-size:13px;line-height:1.5;color:#555}
.partner-card-arrow{position:absolute;top:14px;right:16px;font-size:15px;color:#111;opacity:0;transform:translate(-4px,4px);transition:opacity .25s,transform .25s}
@media(hover:hover){a.partner-card:hover{background:#f6f6f3}a.partner-card:hover .partner-card-arrow{opacity:1;transform:none}}
a.partner-card:focus-visible{outline:2px solid #111;outline-offset:-4px}
a.partner-card:focus-visible .partner-card-arrow{opacity:1;transform:none}
@media(hover:none){a.partner-card .partner-card-arrow{opacity:.55;transform:none}}
@media(prefers-reduced-motion:reduce){.partner-card,.partner-card-arrow{transition:none}}

/* ── Hakkımızda sayfası ──────────────────────────────────────────────────────────────────────── */
.about-hero{padding-bottom:56px}
.about-intro{max-width:1040px;margin-top:38px;font-size:clamp(26px,3.2vw,46px);line-height:1.22;letter-spacing:-.035em;color:#111}
.about-visual{padding-bottom:28px}
.about-visual img,.about-visual-empty{display:block;width:100%;height:auto;aspect-ratio:16/8;max-height:78vh;object-fit:cover;background:#efefed}
.about-visual>p{display:flex;justify-content:space-between;gap:20px;margin-top:14px;font-size:12px;line-height:1.6;letter-spacing:.65px;color:#555}
.about-story{border-top:0;padding-top:64px}
.about-section-head{display:flex;flex-direction:column;gap:18px;margin-bottom:54px}
.about-section-head h2{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(38px,5.2vw,76px);font-weight:500;line-height:1.05;letter-spacing:-.055em}
:is(.about-values,.about-divisions,.about-steps,.about-area){border-top:1px solid var(--line);padding-top:42px;padding-bottom:100px}
.about-values ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #111}
.about-values li{padding:26px 28px 6px 0;border-right:1px solid var(--line)}
.about-values li+li{padding-left:28px}
.about-values li:last-child{border-right:0;padding-right:0}
.about-values li>span{font-size:13px;color:#777;font-variant-numeric:tabular-nums}
.about-values h3{margin-top:46px;font-size:22px;font-weight:500;line-height:1.25;letter-spacing:-.5px}
.about-values li>p{margin-top:12px;font-size:16px;line-height:1.7;color:#555}
.about-division-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.about-division{display:flex;flex-direction:column;align-items:flex-start;min-height:420px;padding:36px;background:#f3f3f1;color:#111;text-decoration:none;transition:background-color .3s}
.about-division h3{margin-top:22px;font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(34px,4vw,58px);font-weight:500;line-height:1.05;letter-spacing:-.05em}
.about-division>p:not(.section-label){max-width:440px;margin-top:22px;font-size:17px;line-height:1.7;color:#555}
.about-division .text-link{margin-top:auto;padding-top:34px}
.about-division.is-dark{background:#0b0b0b;color:#f2f2f2}
.about-division.is-dark .section-label{color:#8f8f8f}
.about-division.is-dark>p:not(.section-label){color:#a8a8a8}
.about-division.is-dark .text-link{color:#f2f2f2;border-bottom-color:#f2f2f2}
@media(hover:hover){.about-division:hover{background:#eaeae7}.about-division.is-dark:hover{background:#1a1a1a}}
.about-steps .process{list-style:none;margin:0;padding:0 0 0}
.about-steps .process li{border-top:1px solid #111;padding-top:22px}
.about-steps .process li>p{margin-top:38px;font-size:22px;line-height:1.45;letter-spacing:-.4px;color:#111}
.about-area>div{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px 60px;align-items:end;margin-top:26px}
.about-area h2{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(30px,3.6vw,54px);font-weight:500;line-height:1.1;letter-spacing:-.045em}
.about-area ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.about-area li a{display:flex;justify-content:space-between;gap:16px;padding:15px 2px;border-bottom:1px solid var(--line);font-size:17px;transition:padding .3s}
.about-area li a span{color:#777}
@media(hover:hover){.about-area li a:hover{padding-left:12px}}
@media(max-width:1000px){.about-values ol{grid-template-columns:repeat(2,minmax(0,1fr))}.about-values li{padding:24px 24px 30px 0;border-bottom:1px solid var(--line)}.about-values li:nth-child(2n){border-right:0;padding-right:0}.about-values h3{margin-top:26px}.about-area>div{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.about-intro{margin-top:26px}.about-intro br,.about-section-head br{display:none}.about-visual img,.about-visual-empty{aspect-ratio:4/3}.about-story{padding-top:40px}.about-section-head{margin-bottom:32px}:is(.about-values,.about-divisions,.about-steps,.about-area){padding-top:32px;padding-bottom:64px}.about-division-grid{grid-template-columns:minmax(0,1fr)}.about-division{min-height:0;padding:26px 22px}.about-division .text-link{padding-top:28px}.about-steps .process li>p{margin-top:16px;font-size:19px}}
@media(max-width:540px){.about-values ol{grid-template-columns:minmax(0,1fr)}.about-values li,.about-values li+li{padding:22px 0 26px;border-right:0}}
@media(prefers-reduced-motion:reduce){.about-division,.about-area li a{transition:none}}

/* ── İmleç ışığı (CursorLight.tsx) ───────────────────────────────────────────────────────────────
   Yalnızca Photography sayfalarında. Başlıklarda harfler imlece yakın yerde parlar (--mx/--my başlık
   içindeki konum); görsellerde imlecin olduğu nokta aydınlanır (--ix/--iy). Sınıfı bileşen ilk fare
   hareketinde ekler; fare yoksa hiçbiri uygulanmaz. */
.lit-dark{background:radial-gradient(560px circle at var(--mx,-999px) var(--my,-999px),#fff 0,#fff 10%,#adadad 72%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.lit-dark.heading-reveal:not(.is-revealed){background:none}
@media(hover:hover) and (pointer:fine){
 .photo-trial :is(.photo-open,.service-image:not(.is-empty)){position:relative}
 .photo-trial :is(.photo-open,.service-image:not(.is-empty))::after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(420px circle at var(--ix,50%) var(--iy,50%),rgba(255,255,255,.34),rgba(255,255,255,.08) 45%,transparent 70%);mix-blend-mode:overlay;opacity:0;transition:opacity .45s;pointer-events:none}
 .photo-trial :is(.photo-open,.service-image):hover::after{opacity:1}
 .photo-trial .photo-enlarge{z-index:2}
}
@media(prefers-reduced-motion:reduce){.photo-trial :is(.photo-open,.service-image)::after{display:none}}

/* ── Yükleme ekranı: şafak (SiteIntro.tsx) ───────────────────────────────────────────────────────
   Eos = şafak. Logodaki yuvarlak işaret güneştir; site yüklendikçe ufkun ardından yükselir.
   Yükleme (.is-loading): --p (0–1) sitenin gerçek yükleme ilerlemesidir; güneşin yüksekliğini,
   gökyüzünün ve suyun aydınlığını, harflerin ne kadar ışık aldığını belirler. Açılış (.is-ready):
   güneş yerine oturmuştur; parlar (0), alt ucu uzar (0,15), yazılar söner (0,9) ve ekran ufuk
   çizgisinden yukarı ve aşağı açılır (1,35–2,25). Süre bileşendeki REVEAL ile aynıdır.
   html.intro-seen: bu oturumda açılış görüldü, sahne hiç gösterilmez (layout'taki betik ekler).
   Ufuk, sahnenin %57,14'ündedir (400/700); açılma maskesi de aynı yerden başlar. */
@property --intro-gap{syntax:'<percentage>';inherits:false;initial-value:0%}
.site-intro{--p:0;--intro-horizon:57.14%;position:fixed;inset:0;z-index:300;overflow:hidden;background:#060606;color:#f2f2f2;
 -webkit-mask-image:linear-gradient(to bottom,#000 calc(var(--intro-horizon) - var(--intro-gap)),transparent calc(var(--intro-horizon) - var(--intro-gap)),transparent calc(var(--intro-horizon) + var(--intro-gap)),#000 calc(var(--intro-horizon) + var(--intro-gap)));
 mask-image:linear-gradient(to bottom,#000 calc(var(--intro-horizon) - var(--intro-gap)),transparent calc(var(--intro-horizon) - var(--intro-gap)),transparent calc(var(--intro-horizon) + var(--intro-gap)),#000 calc(var(--intro-horizon) + var(--intro-gap)));
 /* JavaScript çalışmazsa perde 9 saniye sonra kendiliğinden kalkar. */
 animation:site-intro-fade-out .5s ease 9s forwards}
.intro-seen .site-intro{display:none}
.site-intro.is-ready{animation:site-intro-open .9s cubic-bezier(.76,0,.24,1) 1.35s forwards,site-intro-leave .01s linear 2.25s forwards}
.site-intro.is-skipping{animation:site-intro-fade-out .45s ease forwards}
.site-intro-scene{position:absolute;inset:0;width:100%;height:100%}

/* Gökyüzü ve su: aydınlıkları yükleme ilerlemesidir. */
.si-sky{opacity:calc(.08 + var(--p) * .92)}
.si-water{opacity:calc(var(--p) * .9)}
.si-water line{stroke:#f3dcc0;stroke-width:1.1;stroke-linecap:round;opacity:.22;animation:site-intro-ripple 3.2s ease-in-out infinite}
.si-horizon{opacity:calc(.18 + var(--p) * .82)}
/* Güneş: ufkun 162 birim altından yerine yükselir. Ucu ufukla aynı hizadadır; ufkun altı kırpılır. */
.si-sun{transform-box:view-box;transform:translateY(calc((1 - var(--p)) * 162px));fill:#fff6ea}
.si-sun>circle{opacity:calc(.25 + var(--p) * .75)}
.is-ready .si-sun{fill:#fff;transition:fill .6s}
.is-ready .si-sun>circle{transform-box:fill-box;transform-origin:center;animation:site-intro-pulse 1.3s ease-out forwards}
/* Harfler: karanlıkta zor seçilen siluet; güneş yükseldikçe ışık alır. */
.si-letters{fill:#fff;opacity:calc(.07 + var(--p) * var(--p) * .93)}
/* İşaretin alt ucu: açılışta ufuktan aşağı uzar. */
.si-tip{fill:#fff;clip-path:inset(0 0 100% 0)}
.is-ready .si-tip{animation:site-intro-tip .55s cubic-bezier(.2,.75,.1,1) .15s forwards}
.si-grain{opacity:.5;mix-blend-mode:overlay;pointer-events:none}

/* Yazılar */
.site-intro-meta{position:absolute;margin:0;font-size:12px;line-height:1.6;letter-spacing:.9px;text-transform:uppercase;color:rgba(255,255,255,.58);opacity:0;animation:site-intro-fade .9s ease .25s forwards;transition:opacity .4s ease}
.site-intro-meta.is-top-left{left:48px;top:38px}
.site-intro-count{position:absolute;right:48px;bottom:30px;margin:0;display:flex;flex-direction:column;align-items:flex-end;gap:2px;transition:opacity .4s ease}
.site-intro-count small{font-size:12px;line-height:1.6;letter-spacing:.9px;text-transform:uppercase;color:rgba(255,255,255,.58)}
.site-intro-count span{font-family:var(--font-sans),Arial,sans-serif;font-size:clamp(40px,5vw,76px);font-weight:500;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
/* Açılışta sayaç ve köşe yazıları söner; ekranda yalnızca logo ve ışık kalır. */
.is-ready .site-intro-count{opacity:0}
.is-ready .site-intro-meta{transition-delay:.9s;opacity:0!important;animation:none}

@keyframes site-intro-fade{to{opacity:1}}
@keyframes site-intro-ripple{50%{opacity:.5;transform:translateX(5px)}}
@keyframes site-intro-pulse{0%{transform:scale(1)}30%{transform:scale(1.35);opacity:1}100%{transform:scale(1.12);opacity:.8}}
@keyframes site-intro-tip{to{clip-path:inset(0)}}
@keyframes site-intro-open{to{--intro-gap:60%}}
@keyframes site-intro-leave{to{opacity:0;visibility:hidden}}
@keyframes site-intro-fade-out{to{opacity:0;visibility:hidden}}

/* Dar ekran: sahne biraz küçülür ki logonun kenarları ekrana sığsın; ufuk da buna göre kayar. */
@media(max-width:640px){
 .site-intro{--intro-horizon:56.14%}
 .site-intro-scene{top:7%;height:86%}
 .site-intro-meta.is-top-left{left:20px;top:22px}
 .site-intro-count{right:20px;bottom:16px}
}
@media(prefers-reduced-motion:reduce){.site-intro{display:none}}
/* Footer imzası: isim beyaz ve tıklanır. */
.site-footer-credit a{color:#fff;text-decoration:none;transition:opacity .2s}
.site-footer-credit a:hover{text-decoration:underline;text-underline-offset:3px}

/* "Çalışmanın detayları": altı çizili ince yazı yerine oklu, dolu bir düğme (ana sayfa iş kartları ve
   İşlerimiz listesi). Ok, içerik olarak CSS ile eklenir; üzerine gelince ilerler. */
.project-meta{align-items:center}
.project-meta .project-detail-link,.portfolio-copy .portfolio-study{display:inline-flex;align-items:center;gap:9px;width:fit-content;padding:11px 18px;border:1px solid #111;border-radius:100px;background:#111;color:#fff;font-size:14px;line-height:1.35;white-space:nowrap;text-decoration:none;transition:background-color .2s,color .2s}
.project-meta .project-detail-link::after,.portfolio-copy .portfolio-study::after{content:"→";transition:transform .3s cubic-bezier(.2,.7,.1,1)}
.project-meta .project-detail-link:focus-visible,.portfolio-copy .portfolio-study:focus-visible{outline:2px solid #111;outline-offset:3px}
@media(hover:hover){
 .project-meta .project-detail-link:hover,.portfolio-copy .portfolio-study:hover{background:#fff;color:#111;border-color:#111}
 .project-meta .project-detail-link:hover::after,.portfolio-copy .portfolio-study:hover::after{transform:translateX(4px)}
}
@media(max-width:640px){.project-meta .project-detail-link{margin:6px 0 0}}
@media(prefers-reduced-motion:reduce){.project-meta .project-detail-link::after,.portfolio-copy .portfolio-study::after{transition:none}}

/* ── Güne göre ışık (DayLight.tsx, deneme) ───────────────────────────────────────────────────────
   Zemin ve vurgu tonu Manavgat'taki güneşe göre çok hafif kayar. Bileşen <html>'e üç değişken yazar:
   --day-bg (Creative'in açık zemini), --day-dark (Photography'nin koyu zemini), --day-accent (vurgu).
   Değişken yokken (JavaScript çalışmadıysa) özgün renkler geçerlidir. */
:root{background:var(--day-bg,#fff);transition:background-color 1.6s ease}
html:root:has(.photo-trial){background:var(--day-dark,#0b0b0b)}
html .hero-video .creative-hero h1>span{color:var(--day-accent,#a19080);transition:color 1.6s ease}
::selection{background:var(--day-accent,#a19080);color:#fff}
/* Köşedeki satır: her zemin üzerinde okunur (zeminin tersi renk). Footer ekrandayken çekilir. */
.daylight{position:fixed;left:24px;bottom:18px;z-index:35;mix-blend-mode:difference;transition:opacity .3s}
.daylight.is-hidden{opacity:0;pointer-events:none}
.daylight-line{display:block;margin:0;padding:0;border:0;background:none;font-size:11px;line-height:1.5;letter-spacing:.7px;text-transform:uppercase;font-variant-numeric:tabular-nums;color:#fff;opacity:.72}
button.daylight-line{cursor:pointer}
button.daylight-line:hover{opacity:1}
/* Deneme paneli: yalnızca ?isik=test ile açılır. */
.daylight-panel{position:fixed;left:24px;bottom:46px;z-index:36;width:300px;padding:16px;border-radius:12px;background:#111;color:#f2f2f2;box-shadow:0 12px 34px rgba(0,0,0,.3);font-size:13px;line-height:1.5}
.daylight-panel>p{display:flex;justify-content:space-between;gap:10px;margin:0 0 12px;font-weight:600}
.daylight-panel>p span{font-weight:400;color:#9a9a9a}
.daylight-panel label{display:block;margin-bottom:6px;font-variant-numeric:tabular-nums}
.daylight-panel input{width:100%;accent-color:#fff}
.daylight-panel>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.daylight-panel button{padding:6px 11px;border:1px solid #444;border-radius:999px;background:transparent;color:#f2f2f2;font-size:12px;line-height:1.4;cursor:pointer}
.daylight-panel button:hover{border-color:#fff}
.daylight-panel button.is-reset{background:#f2f2f2;border-color:#f2f2f2;color:#111}
.daylight-panel small{display:block;margin-top:12px;font-size:11px;line-height:1.5;color:#9a9a9a}
@media(max-width:640px){.daylight{left:16px;bottom:14px}.daylight-line{font-size:10px;letter-spacing:.4px}.daylight-panel{left:16px;bottom:40px;width:min(300px,calc(100vw - 32px))}}
@media(prefers-reduced-motion:reduce){:root,.hero-video .creative-hero h1>span{transition:none}}

/* Original source: hero-video.css */
/* Ana sayfanın video arka planlı hero'su ve showreel oynatıcısı. Ana sayfa (.hero-trial) yükler. */
.hero-video{position:relative;isolation:isolate;overflow:hidden;display:flex;min-height:calc(100svh - 80px);background:#111;color:#fff}
/* Kareye yakın video geniş alana "cover" ile oturur; üstten ve alttan kırpılır. */
.hero-video-media{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.02)} /* hafif büyütme, film taramasının kenar çizgisini dışarıda bırakır */
/* Videonun üzerinde ince noktalı doku: düşük çözünürlüğü ve sıkıştırma izlerini örter.
   Karartmanın (::after) altında, videonun üstünde durur. */
.hero-video::before{content:'';position:absolute;inset:0;z-index:-1;background-image:radial-gradient(circle,rgba(0,0,0,.3) 1px,transparent 1.3px);background-size:4px 4px;pointer-events:none}
/* Yazının okunması için: altta koyu, ortada açık, üstte hafif karartma. */
.hero-video::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.82) 25%,rgba(0,0,0,.62) 48%,rgba(0,0,0,.2) 68%,rgba(0,0,0,.14) 80%,rgba(0,0,0,.38))}

.hero-video .creative-hero{display:flex;flex-direction:column;padding-bottom:56px}
.hero-video .hero-meta{color:rgba(255,255,255,.82)}
/* Başlık ve alt satır hero'nun dibine yaslanır. */
.hero-video .creative-hero h1{margin-top:auto;margin-bottom:40px}
.hero-video .creative-hero h1>span{color:#a19080}
.hero-video .creative-hero .hero-bottom p{color:rgba(255,255,255,.88)}
.hero-video .hero-cta{background:#fff;border-color:#fff;color:#111}
.hero-video .hero-cta:hover{background:#e6e6e6;color:#111}
/* Hero artık kendi zemininde bittiği için alttaki bölümün üst çizgisi gereksiz. */
.hero-video+.work{border-top:0}
@media(max-width:1100px){.hero-video{min-height:calc(100svh - 74px)}}
@media(max-width:640px){.hero-video .creative-hero{padding-bottom:36px}.hero-video .creative-hero h1{margin-bottom:26px}}

/* Şeffaf menü: sayfanın en üstündeyken menü videonun üzerine biner ve beyaza döner.
   Kaydırınca (.is-scrolled) ya da mobil menü açılınca (.menu-open) özgün beyaz çubuk geri gelir. */
.hero-trial .site-header{transition:background-color .25s,border-color .2s}
.hero-trial .hero-video{margin-top:-81px;padding-top:81px;min-height:100svh}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open){background:transparent;backdrop-filter:none;color:#fff}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .brand-image{filter:brightness(0) invert(1)}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) :is(a,button):focus-visible{outline-color:#fff}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) nav>.pill{border-color:#fff}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) nav>.pill:hover{background:#fff;color:#111}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .division-switch{border-left-color:rgba(255,255,255,.4)}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .division-switch a{color:rgba(255,255,255,.72)}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .division-switch a:hover{color:#fff;border-bottom-color:#fff}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .division-current{color:#fff}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .division-current:before{background:#fff}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .demo-admin-link{border-color:rgba(255,255,255,.7)}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .menu-toggle{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}
.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .menu-icon:before,.hero-trial .site-header:not(.is-scrolled):not(.menu-open) .menu-icon:after{background:#fff}
/* Menü yazıları okunsun diye üstteki karartma biraz artırıldı. */
.hero-trial .hero-video::after{background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.82) 25%,rgba(0,0,0,.62) 48%,rgba(0,0,0,.2) 68%,rgba(0,0,0,.14) 80%,rgba(0,0,0,.5))}
@media(max-width:1100px){.hero-trial .hero-video{margin-top:-75px;padding-top:75px;min-height:100svh}}

/* Showreel (bkz. ShowreelHero). Rozet fareyi izler: dıştaki kutuyu JS taşır, içteki disk büyüyüp küçülür. */
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-reel-button{display:inline-flex;align-items:center;gap:10px;background:transparent;border-color:rgba(255,255,255,.75);color:#fff;font:inherit;cursor:pointer}
.hero-reel-button:hover{background:#fff;border-color:#fff;color:#111}
.hero-reel-button>i,.reel-cursor-disc>i{width:0;height:0;border-style:solid;border-color:transparent transparent transparent currentColor;border-width:5px 0 5px 8px}
.has-reel-cursor.is-reel-hover{cursor:none}
.reel-cursor{position:fixed;left:0;top:0;z-index:60;pointer-events:none;will-change:transform}
.reel-cursor-disc{display:flex;align-items:center;justify-content:center;gap:10px;width:176px;height:52px;margin:-26px 0 0 -88px;border-radius:12px;white-space:nowrap;background:rgba(255,255,255,.94);color:#111;font-size:11px;font-weight:500;letter-spacing:.9px;text-transform:uppercase;line-height:1;opacity:0;transform:scale(.3);transition:opacity .3s ease,transform .5s cubic-bezier(.2,.8,.2,1)}
.reel-cursor.is-visible .reel-cursor-disc{opacity:1;transform:none}
.hero-video:active .reel-cursor.is-visible .reel-cursor-disc{transform:scale(.88)}
/* Showreel açılırken hero'nun yazıları yukarı doğru çekilir, kapanınca geri gelir. */
.hero-video .creative-hero>*{transition:opacity .45s ease,transform .6s cubic-bezier(.3,0,.2,1)}
.hero-video[data-reel="open"] .creative-hero>*{opacity:0;transform:translateY(-36px)}
.hero-video[data-reel="open"] .creative-hero>h1{transition-delay:.05s}
.hero-video[data-reel="open"] .creative-hero>.hero-bottom{transition-delay:.1s}
.showreel{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#000;color:#fff;overflow:hidden}
.showreel::backdrop{background:transparent}
.showreel[open]{animation:showreel-in .7s cubic-bezier(.3,0,.2,1) .2s both}
.showreel.is-closing{animation:showreel-out .45s ease both}
.showreel>video{display:block;width:100%;height:100%;object-fit:contain;background:#000}
.showreel>video{cursor:pointer}
/* Oynatıcının kendi kontrolleri: üstte başlık ve Kapat, altta ince ilerleme çizgisi ve düğmeler.
   Oynatma sürerken fare durunca (.is-idle) hepsi solar. */
.showreel-top,.showreel-bar{position:absolute;left:0;right:0;transition:opacity .35s ease,transform .45s cubic-bezier(.3,0,.2,1)}
.showreel-top{top:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 28px 60px;background:linear-gradient(to bottom,rgba(0,0,0,.55),transparent);pointer-events:none}
.showreel-top>p{font-size:12px;letter-spacing:1.6px;text-transform:uppercase;line-height:1.4}
.showreel-top>p>span{margin-left:14px;color:rgba(255,255,255,.6)}
.showreel-close{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(0,0,0,.3);color:#fff;font:inherit;font-size:14px;cursor:pointer;backdrop-filter:blur(8px);pointer-events:auto;transition:background-color .2s,color .2s}
.showreel-close:hover{background:#fff;color:#111}
.showreel-close>span{font-size:18px;line-height:1}
.showreel-bar{bottom:0;padding:70px 28px 20px;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);pointer-events:none}
.showreel-bar>*{pointer-events:auto}
.showreel-seek{--progress:0%;display:block;width:100%;height:18px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer}
.showreel-seek::-webkit-slider-runnable-track{height:2px;border-radius:2px;background:linear-gradient(to right,#fff var(--progress),rgba(255,255,255,.28) var(--progress));transition:height .2s}
.showreel-seek::-moz-range-track{height:2px;border-radius:2px;background:linear-gradient(to right,#fff var(--progress),rgba(255,255,255,.28) var(--progress))}
.showreel-seek:is(:hover,:focus-visible)::-webkit-slider-runnable-track{height:4px}
.showreel-seek::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;margin-top:-5px;border-radius:50%;background:#fff;transform:scale(0);transition:transform .2s}
.showreel-seek::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:#fff}
.showreel-seek:is(:hover,:focus-visible)::-webkit-slider-thumb{margin-top:-4px;transform:none}
.showreel-controls{display:flex;align-items:center;gap:6px;margin-top:6px;margin-inline:-9px}
.showreel-controls>button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;cursor:pointer;transition:background-color .2s}
.showreel-controls>button:hover{background:rgba(255,255,255,.16)}
.showreel :is(button,input):focus-visible{outline:2px solid #fff;outline-offset:2px}
.showreel svg{width:22px;height:22px;fill:currentColor}
.showreel svg .is-line{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.showreel-time{margin-right:auto;padding-left:6px;font-size:13px;letter-spacing:.3px;font-variant-numeric:tabular-nums}
.showreel-time>span{color:rgba(255,255,255,.55)}
/* Duraklatılınca ortada beliren oynat işareti. */
.showreel-center{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:96px;height:96px;margin:-48px 0 0 -48px;border-radius:50%;background:rgba(255,255,255,.94);color:#111;opacity:0;transform:scale(.6);transition:opacity .25s ease,transform .4s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.showreel-center.is-paused{opacity:1;transform:none}
.showreel.is-closing .showreel-center{opacity:0}
.showreel-center>svg{width:34px;height:34px}
.showreel.is-idle{cursor:none}
.showreel.is-idle>video{cursor:none}
.showreel.is-idle .showreel-top{opacity:0;transform:translateY(-12px)}
.showreel.is-idle .showreel-bar{opacity:0;transform:translateY(12px)}
.showreel.is-idle :is(.showreel-close,.showreel-bar>*){pointer-events:none}
/* Klavyeyle gezilirken kontroller gizli kalmasın. */
.showreel.is-idle:has(:focus-visible) :is(.showreel-top,.showreel-bar){opacity:1;transform:none}
@keyframes showreel-in{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}
@keyframes showreel-out{from{opacity:1}to{opacity:0}}
@media(max-width:640px){.hero-actions .pill{padding-inline:18px}.showreel-top{padding:14px 16px 50px}.showreel-top>p>span{display:none}.showreel-bar{padding:60px 16px 12px}.showreel-center{width:76px;height:76px;margin:-38px 0 0 -38px}}

/* Original source: photo-trial.css */
/* Photography sayfası: koyu tema, tam ekran slayt hero ve açılan kareler.
   /photography sayfası yükler; her kural .photo-trial altında kalır. */

/* --- Koyu tema ---------------------------------------------------------- */
html:has(.photo-trial){background:#0b0b0b;color:#f2f2f2}
.photo-trial{--line:#2a2a2a;--muted:#a0a0a0;--trial-bg:#0b0b0b;--trial-soft:#a8a8a8;--trial-dim:#8f8f8f;--trial-rule:#2a2a2a}
.photo-trial :is(a,summary,button):focus-visible{outline-color:#fff}
.photo-trial .text-link{border-bottom-color:#f2f2f2}
.photo-trial .text-link:hover{color:#b5b5b5}
.photo-trial .pill{border-color:#f2f2f2}
.photo-trial .pill:hover{background:#f2f2f2;color:#111}
.photo-trial :is(.photo-label,.section-label,.option-number){color:var(--trial-dim)}

/* Menü: en üstte şeffaf, kaydırınca koyu; logo her durumda beyaz. */
.photo-trial .site-header{background:rgba(11,11,11,.9);color:#f2f2f2;transition:background-color .25s,border-color .2s}
.photo-trial .site-header:not(.is-scrolled):not(.menu-open){background:transparent;backdrop-filter:none}
.photo-trial :is(.header,.footer) .brand-image{filter:brightness(0) invert(1)}
.photo-trial .division-switch{border-left-color:#444}
.photo-trial .division-switch a{color:#9a9a9a}
.photo-trial .division-switch a:hover{color:#fff;border-bottom-color:#fff}
.photo-trial .division-current{color:#fff}
.photo-trial .division-current:before{background:#fff}
.photo-trial .menu-toggle{background:transparent;border-color:#777;color:#f2f2f2}
.photo-trial .menu-icon:before,.photo-trial .menu-icon:after{background:#f2f2f2}
@media(max-width:1100px){.js .photo-trial .header nav{background:#0b0b0b;box-shadow:0 14px 18px #0006}.js .photo-trial .header nav .division-switch{border-top-color:var(--trial-rule)}}

/* --- Hero: tam ekran kareler --------------------------------------------- */
.photo-trial-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;min-height:100svh;margin-top:-81px;padding-top:81px;background:#111;color:#fff}
.hero-slides,.hero-slide{position:absolute;inset:0}
.hero-slides{z-index:-2}
.hero-slide{opacity:0;transition:opacity 1.6s ease}
.hero-slide.is-active{opacity:1}
.hero-slide img{object-fit:cover}
/* Görünen kare yavaşça yakınlaşır. */
.hero-slide.is-active img{animation:photo-trial-zoom 8s ease-out forwards}
@keyframes photo-trial-zoom{from{transform:scale(1)}to{transform:scale(1.07)}}
.photo-trial-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(0,0,0,.78),rgba(0,0,0,.12) 55%,rgba(0,0,0,.5))}
.photo-trial-hero-inner{display:flex;flex-direction:column;padding-top:46px;padding-bottom:104px}
.photo-trial-hero .photo-kicker{color:rgba(255,255,255,.82)}
.photo-trial-hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-top:auto}
.photo-trial-hero .photo-label{color:rgba(255,255,255,.72)}
.photo-trial-hero h1{font-family:var(--font-display),var(--font-sans),Arial,sans-serif;font-size:clamp(46px,9.6vw,150px);font-weight:500;line-height:1;letter-spacing:-.05em;margin-top:22px}
.photo-trial-hero-aside{flex-shrink:0;padding-bottom:10px}
.photo-trial-hero-aside p{font-size:18px;line-height:1.55;color:rgba(255,255,255,.86)}
.photo-trial-hero-aside .text-link{display:inline-block;margin-top:20px}
/* Alt şerit: karenin adı ve ilerleme çizgileri. */
.hero-slide-bar{position:absolute;left:0;right:0;bottom:30px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.hero-slide-caption{font-size:12px;line-height:1.5;letter-spacing:.8px;color:rgba(255,255,255,.8)}
.hero-slide-steps{display:flex;gap:8px}
.hero-slide-steps button{width:56px;padding:14px 0;border:0;background:none}
.hero-slide-steps button:before{content:'';display:block;height:2px;background:rgba(255,255,255,.3)}
.hero-slide-steps button span{display:block;height:2px;margin-top:-2px;background:#fff;transform:scaleX(0);transform-origin:left}
.hero-slide-steps button.is-active span{animation:photo-trial-progress linear forwards}
@keyframes photo-trial-progress{to{transform:scaleX(1)}}

/* --- Seçili kareler ------------------------------------------------------ */
.photo-trial .photo-selection{padding-top:110px}
.photo-trial .sample-note,.photo-trial .photo-work figcaption>span{color:var(--trial-dim)}
.photo-trial .margin-copy{color:#bdbdbd}
.photo-trial .photo-open{background:#161616}
/* Kareler ekrana girerken perde gibi aşağıdan açılır, alt yazıları ardından belirir.
   Sınıfları ScrollReveal kapsayıcıya (figure) ekler: kırpılan öğenin kendisi gözlenirse
   tarayıcı onu görünür saymaz. */
.photo-trial .reveal .photo-open{clip-path:inset(100% 0 0 0);transition:clip-path 1.2s cubic-bezier(.2,.7,.1,1)}
.photo-trial .reveal .photo-open img{transform:scale(1.14);transition:transform 1.6s cubic-bezier(.2,.7,.1,1)}
.photo-trial .reveal figcaption{opacity:0;transform:translateY(12px);transition:opacity .8s ease .5s,transform .9s cubic-bezier(.2,.7,.1,1) .5s}
.photo-trial .reveal.is-revealed .photo-open{clip-path:inset(0)}
.photo-trial .reveal.is-revealed .photo-open img,.photo-trial .reveal.is-revealed figcaption{transform:none}
.photo-trial .reveal.is-revealed figcaption{opacity:1}
@media(hover:hover){.photo-trial .reveal.is-revealed .photo-open:hover img{transform:scale(1.025);transition-duration:.6s}}

/* --- Bakışımız ve iletişim ----------------------------------------------- */
.photo-trial :is(.photo-about,.photo-contact){border-top-color:var(--trial-rule)}
.photo-trial .photo-about-grid>div>p{color:var(--trial-soft)}
.photo-trial .photo-about-grid>div>.photo-lead{color:#f2f2f2}
.photo-trial .photo-services li{border-top-color:var(--trial-rule)}
.photo-trial .photo-services li span{color:var(--trial-dim)}
.photo-trial .contact-shortcuts>a{border-bottom-color:#f2f2f2}
.photo-trial .contact-shortcuts>a:hover,.photo-trial .phone-number:hover{color:#b5b5b5}
.photo-trial :is(.option-description,.mail-explanation,.mail-result>p,.direct-email,.contact-location>p:last-child){color:var(--trial-soft)}
.photo-trial :is(.field-help,.phone-note,.contact-demo-note,.form-field label>span){color:var(--trial-dim)}
.photo-trial .contact-divider:before{background:var(--trial-rule)}
.photo-trial .contact-divider>span{background:var(--trial-bg);color:var(--trial-dim)}
.photo-trial .form-field :is(input,textarea){background:#141414;border-color:#3a3a3a;color:#f2f2f2}
.photo-trial .form-field :is(input,textarea)::placeholder{color:#7d7d7d}
.photo-trial .form-field :is(input,textarea):focus{outline-color:#fff;border-color:#fff}
.photo-trial .form-field :is(input,textarea):user-invalid{border-color:#e06a6a}
.photo-trial .mail-submit{background:#f2f2f2;border-color:#f2f2f2;color:#111}
.photo-trial .mail-submit:hover{background:#d9d9d9}
.photo-trial .mail-result{border-left-color:#f2f2f2}
.photo-trial .direct-email>a{color:#f2f2f2;border-bottom-color:#666}
.photo-trial .whatsapp-button,.photo-trial .whatsapp-button:hover{border-color:#25d366;color:#082b16}
.photo-trial .whatsapp-button:hover{background:#1fbd5a}

/* --- Büyütme penceresi --------------------------------------------------- */
.photo-trial .photo-dialog{background:#0b0b0b;color:#f2f2f2}
.photo-trial .photo-dialog>img{background:#050505;max-height:calc(100dvh - 210px)}
.photo-trial :is(.photo-close,.gallery-control){background:transparent;border-color:#555;color:#f2f2f2}
.photo-trial :is(.photo-close,.gallery-control):hover{background:#f2f2f2;color:#111}
.photo-trial .photo-dialog-bottom{border-top:0;padding:16px 25px}
.photo-trial .photo-dialog-bottom>p{color:var(--trial-dim)}

@media(max-width:1100px){.photo-trial-hero{margin-top:-75px;padding-top:75px}}
@media(max-width:760px){.photo-trial-hero-bottom{flex-direction:column;align-items:flex-start;gap:26px}.photo-trial-hero-aside{padding-bottom:0}.photo-trial-hero-aside p{font-size:16px}.photo-trial-hero-inner{padding-top:30px;padding-bottom:96px}.photo-trial .photo-selection{padding-top:64px}}
@media(max-width:640px){.photo-trial-hero h1{font-size:clamp(44px,13.4vw,84px);margin-top:16px}.hero-slide-bar{bottom:20px}.hero-slide-steps button{width:34px}.photo-trial .photo-dialog>img{max-height:calc(100dvh - 190px)}.photo-trial .photo-dialog-bottom{padding:12px 15px}}
@media(prefers-reduced-motion:reduce){.hero-slide.is-active img,.hero-slide-steps button.is-active span{animation:none}.hero-slide-steps button.is-active span{transform:none}}

/* Menüde yazısız "EOS" işareti (eoslogouzun.svg). */
.photo-trial .header .brand-image-mark{width:80px;filter:none}
@media(max-width:1100px){.photo-trial .header .brand-image-mark{width:68px}}

/* --- Galeri (/photography/galeri) ---------------------------------------- */
/* Yazısız sayfa: kareler sütunlara dizilir (masonry). Sütun düzeni her karenin kendi oranını korur. */
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.gallery-grid{list-style:none;margin:0 auto;padding:28px 0 110px;columns:3;column-gap:18px}
.gallery-grid>li{break-inside:avoid;margin-bottom:18px;background:#f4f4f4}
@media(min-width:1500px){.gallery-grid{columns:4}}
@media(max-width:760px){.gallery-grid{columns:2;column-gap:10px;padding:16px 0 70px}.gallery-grid>li{margin-bottom:10px}}.gallery-grid>li :is(a,img){display:block;width:100%;height:100%}
.gallery-grid>li img{object-fit:cover}
