:root{--ink:#25323a;--ink-soft:#53636c;--blue:#42acd8;--blue-deep:#247fa9;--blue-pale:#dff4fb;--blue-mist:#eff9fc;--cream:#fbfaf6;--paper:#fff;--line:#dbe4e7;--max:1160px;--shadow:0 20px 55px rgba(32,91,114,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:"Avenir Next","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:2;letter-spacing:.045em;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.wireframe-bar{display:none}.site-header{height:92px;display:flex;align-items:center;gap:34px;padding:0 max(4vw,28px);background:rgba(251,250,246,.94);border-bottom:1px solid rgba(219,228,231,.75);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.logo{display:flex;align-items:center;gap:12px;margin-right:auto;font-size:20px;font-weight:700;letter-spacing:.07em}.logo-mark{width:34px;height:34px;position:relative;border:2px solid var(--blue);border-radius:55% 46% 55% 12%;transform:rotate(-8deg)}.logo-mark::after{content:"";position:absolute;width:17px;height:22px;right:-12px;bottom:-7px;border-right:2px solid var(--blue);border-bottom:2px solid var(--blue);border-radius:0 0 100% 0;transform:rotate(12deg)}.desktop-nav{display:flex;align-items:center;gap:30px;color:var(--ink-soft);font-size:12px;font-weight:600;letter-spacing:.12em}.desktop-nav a{position:relative;padding:8px 0}.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:2px;background:var(--blue);transition:right .25s ease}.desktop-nav a:hover::after{right:0}.header-cta{padding:11px 23px;border:1px solid var(--blue);border-radius:999px;color:var(--blue-deep);font-size:12px;font-weight:700;transition:.25s ease}.header-cta:hover{color:#fff;background:var(--blue);transform:translateY(-2px)}.menu-button{display:none;border:0;background:transparent;padding:8px}.menu-button span{display:block;width:27px;height:1px;margin:7px 0;background:var(--ink)}.eyebrow{margin:0 0 15px;color:var(--blue-deep);font:700 10px/1.3 "Avenir Next",sans-serif;letter-spacing:.22em}.eyebrow.light{color:#fff}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(37px,4.3vw,60px);line-height:1.48;letter-spacing:.015em;font-weight:600;margin-bottom:22px}h2{font-size:clamp(26px,2.8vw,38px);line-height:1.65;letter-spacing:.035em;font-weight:600;margin-bottom:20px}h3{font-size:18px;line-height:1.65;letter-spacing:.055em;font-weight:600;margin-bottom:12px}.section-shell{padding:122px max(5vw,26px);position:relative;overflow:hidden}.section-shell>*{width:min(100%,var(--max));margin-left:auto;margin-right:auto}.section-shell+.section-shell{border-top:1px solid rgba(219,228,231,.45)}.soft-bg{background:var(--blue-mist)}.button-row{display:flex;flex-wrap:wrap;gap:13px;margin-top:31px}.button{min-width:178px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 23px;border:1px solid var(--blue);border-radius:999px 999px 999px 18px;font-size:12px;font-weight:700;letter-spacing:.09em;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}.button:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(36,127,169,.14)}.button-dark{color:#fff;background:var(--blue-deep);border-color:var(--blue-deep)}.button-line{color:var(--blue-deep);background:#fff}.button-white{color:var(--blue-deep);background:#fff;border-color:#fff}.button-outline-white{color:#fff;background:rgba(255,255,255,.08);border-color:#fff}.centered{justify-content:center}.center-action{text-align:center;margin-top:55px}.text-link{display:inline-flex;align-items:center;gap:28px;margin-top:13px;padding-bottom:3px;color:var(--blue-deep);border-bottom:1px solid var(--blue);font-size:13px;font-weight:700}.text-link span{transition:transform .2s ease}.text-link:hover span{transform:translateX(5px)}.hero-photo{min-height:calc(100vh - 92px);width:min(calc(100% - 64px),1420px);margin:0 auto 42px;position:relative;display:flex;align-items:center;padding:88px max(6vw,44px);color:#fff;background-color:#72909c;background-image:url("assets/hero-tail-design.png"),linear-gradient(120deg,#7d9aa4,#b7d9e4);background-size:cover;background-position:center;overflow:hidden;border-radius:0 0 60px 8px}.photo-label{display:none}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,44,55,.67) 0%,rgba(19,56,70,.32) 53%,rgba(16,52,64,.04) 82%)}.hero-content{width:min(100%,var(--max));position:relative;margin:0 auto}.hero-content::before{content:"";position:absolute;width:84px;height:165px;left:-38px;top:-45px;border-left:2px solid rgba(255,255,255,.55);border-bottom:2px solid rgba(255,255,255,.55);border-radius:0 0 0 100%;transform:rotate(-13deg)}.hero-content>p:not(.eyebrow){max-width:570px;font-size:14px}.hero-area{position:absolute;left:max(6vw,44px);bottom:28px;margin:0;font-size:10px;letter-spacing:.11em;opacity:.9}.logo-stream{padding:48px 0 65px;overflow:hidden;background:var(--cream)}.stream-heading{width:min(calc(100% - 52px),var(--max));margin:0 auto 28px;display:flex;align-items:baseline;gap:25px}.stream-heading p{margin-bottom:0}.stream-heading>p:last-child{font-size:13px;color:var(--ink-soft)}.stream-window{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.stream-track{display:flex;width:max-content;gap:15px;animation:logo-flow 34s linear infinite}.logo-work{width:190px;height:118px;display:grid;place-items:center;color:var(--blue-deep);background:#fff;border:1px solid #d7ecf3;border-radius:40px 8px 40px 8px;box-shadow:0 12px 34px rgba(39,119,150,.07);font:600 12px/1 "Avenir Next",sans-serif;letter-spacing:.14em}.intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;align-items:start}.intro::after{content:"TAIL";position:absolute;right:3vw;bottom:-50px;color:rgba(66,172,216,.055);font:700 170px/1 "Avenir Next",sans-serif;letter-spacing:-.03em;pointer-events:none}.intro>*{width:auto;margin:0;position:relative;z-index:1}.intro-title{padding-left:31px;position:relative}.intro-title::before,.sub-hero>div::before{content:"";position:absolute;left:0;top:2px;width:4px;height:82px;border-radius:5px;background:var(--blue)}.intro-body{max-width:555px;color:var(--ink-soft)}.section-heading-row{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:end;margin-bottom:59px}.section-heading-row>*{margin-bottom:0}.section-heading-row>div{padding-left:28px;border-left:4px solid var(--blue)}.section-heading-row>p{max-width:480px;color:var(--ink-soft);font-size:14px}.teaser-grid{display:grid;gap:18px}.teaser-grid.three{grid-template-columns:repeat(3,1fr)}.teaser-card{padding:20px 20px 28px;background:#fff;border-radius:36px 8px 36px 8px;box-shadow:var(--shadow);transition:transform .3s ease}.teaser-card:nth-child(2){transform:translateY(22px)}.teaser-card:hover{transform:translateY(-6px)}.teaser-card:nth-child(2):hover{transform:translateY(16px)}.card-index{margin-bottom:15px;color:var(--blue-deep);font:700 9px/1 "Avenir Next",sans-serif;letter-spacing:.17em}.image-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;color:rgba(37,50,58,.6);background:linear-gradient(135deg,#d9f2fb 0%,#f8fbfc 52%,#c9eaf6 100%);border:0;font:700 10px/1.5 "Avenir Next",sans-serif;letter-spacing:.15em;text-align:center;position:relative}.image-placeholder::before{content:"";width:45%;height:160%;position:absolute;left:-12%;top:-50%;border:1px solid rgba(66,172,216,.35);border-radius:50%;transform:rotate(35deg)}.image-placeholder small{margin-top:7px;letter-spacing:.02em}.image-placeholder.short{height:215px;margin-bottom:24px;border-radius:24px 5px 24px 5px}.teaser-card p{color:var(--ink-soft);font-size:13px}.works-teaser{background:#fff}.works-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:52px 24px}.work-wide{grid-column:span 2;width:70%}.work-photo{min-height:330px;border-radius:42px 7px 42px 7px;transition:transform .35s ease}.work-card:nth-child(2) .work-photo{background:linear-gradient(145deg,#fff0d9,#f9faf7 55%,#e6f5fa)}.work-card:nth-child(3) .work-photo{background:linear-gradient(145deg,#edf6e7,#fff 55%,#d7edf7)}.work-wide .work-photo{min-height:455px}.work-card:hover .work-photo{transform:scale(.985)}.work-caption{display:flex;justify-content:space-between;gap:20px;margin-top:16px;padding:0 4px}.work-caption span{color:var(--blue-deep);font-size:10px;letter-spacing:.1em}.work-caption strong{font-size:13px;font-weight:600}.profile-teaser{display:grid;grid-template-columns:.88fr 1.12fr;gap:9vw;align-items:center}.profile-teaser>*{width:auto;margin:0}.portrait{min-height:540px;border-radius:120px 8px 120px 8px;box-shadow:var(--shadow)}.profile-summary{max-width:530px}.profile-summary>p:not(.eyebrow):not(.name){color:var(--ink-soft)}.name{display:flex;flex-direction:column;margin:26px 0;font-size:20px;font-weight:700}.name small{color:var(--blue-deep);font-size:10px}.contact-band{padding-top:135px;padding-bottom:135px;text-align:center;background:#fff}.contact-band::before{content:"";position:absolute;width:240px;height:130px;left:-45px;top:45px;border:2px solid var(--blue-pale);border-radius:50%;transform:rotate(-20deg)}.contact-band>p:not(.eyebrow){color:var(--ink-soft)}.contact-band small{color:var(--ink-soft)}footer{padding:68px max(5vw,26px) 28px;display:grid;grid-template-columns:1fr 1fr;gap:32px;color:var(--ink);background:var(--blue-pale)}footer strong{font-size:21px;letter-spacing:.08em}footer p{color:var(--ink-soft);font-size:11px}footer nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:24px;font-size:11px;font-weight:600;letter-spacing:.1em}.copyright{grid-column:1/-1;margin-top:27px}@keyframes logo-flow{to{transform:translateX(calc(-50% - 7.5px))}}@media(prefers-reduced-motion:reduce){.stream-track{animation:none}*{scroll-behavior:auto}}.sub-hero{padding:118px max(5vw,26px) 95px;position:relative;overflow:hidden;background:linear-gradient(115deg,var(--cream),var(--blue-mist))}.sub-hero::after{content:"";position:absolute;width:420px;height:210px;right:-70px;top:-60px;border:2px solid rgba(66,172,216,.18);border-radius:50%;transform:rotate(-18deg)}.sub-hero>*{width:min(100%,var(--max));margin-left:auto;margin-right:auto}.sub-hero>div{padding-left:34px;position:relative;z-index:1}.sub-hero h1{font-size:clamp(33px,3.8vw,50px);margin-bottom:13px}.sub-hero p:last-child{max-width:620px;color:var(--ink-soft)}.content-block{padding:105px max(5vw,26px);position:relative}.content-block+.content-block{border-top:1px solid rgba(219,228,231,.65)}.content-block>*{width:min(100%,var(--max));margin-left:auto;margin-right:auto}.two-column{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw}.body-text{max-width:620px;color:var(--ink-soft)}.body-text p{margin-bottom:20px}.story-photo{min-height:475px;border-radius:100px 8px 100px 8px;box-shadow:var(--shadow)}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-top:48px}.value-grid article{padding:34px 29px;min-height:260px;background:#fff;border-radius:36px 7px 36px 7px;box-shadow:0 14px 42px rgba(39,119,150,.08)}.value-grid strong{color:var(--blue);font:700 23px/1 "Avenir Next",sans-serif}.value-grid p{color:var(--ink-soft);font-size:13px;margin-top:48px}.detail-list{display:grid;gap:28px}.detail-card{display:grid;grid-template-columns:.72fr 1.28fr;overflow:hidden;background:#fff;border-radius:48px 8px 48px 8px;box-shadow:var(--shadow)}.detail-card .image-placeholder{min-height:330px}.detail-copy{padding:47px}.detail-copy ul{padding-left:1.2em;color:var(--ink-soft);font-size:13px}.detail-copy .note{margin-top:24px;padding-top:17px;color:var(--blue-deep);border-top:1px solid var(--line);font-size:11px}.filter-row{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:42px}.filter-row span{padding:7px 16px;color:var(--blue-deep);background:#fff;border:1px solid #cde7f1;border-radius:999px;font-size:10px}.filter-row span:first-child{color:#fff;background:var(--blue);border-color:var(--blue)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 18px}.gallery-grid .work-photo{min-height:270px}.gallery-grid .work-card:nth-child(3n+2) .work-photo{background:linear-gradient(145deg,#fff0da,#fff 55%,#e1f2f8)}.gallery-grid .work-card:nth-child(3n) .work-photo{background:linear-gradient(145deg,#e9f6e5,#fff 55%,#d9eef6)}.price-hero-box{max-width:760px;margin:48px 0 0;overflow:hidden;background:#fff;border-radius:35px 7px 35px 7px;box-shadow:var(--shadow)}.price-row{display:flex;justify-content:space-between;gap:20px;padding:24px 29px;border-bottom:1px solid var(--line)}.price-row:last-child{border-bottom:0}.price-row strong{color:var(--blue-deep);font-size:17px}.simple-list{border-top:1px solid #cbdde3;margin-top:45px}.simple-list article{display:grid;grid-template-columns:70px 1fr 1.5fr;gap:20px;align-items:baseline;padding:23px 3px;border-bottom:1px solid #cbdde3}.simple-list article>span{color:var(--blue);font:700 12px/1 "Avenir Next",sans-serif}.simple-list p{margin-bottom:0;color:var(--ink-soft)}.contact-options{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:20px}.contact-option{padding:55px 35px;text-align:center;background:#fff;border-radius:48px 8px 48px 8px;box-shadow:var(--shadow)}.contact-option:nth-child(2){background:var(--blue-mist)}.contact-option p{color:var(--ink-soft);font-size:13px}
@media(max-width:860px){.desktop-nav,.header-cta{display:none}.menu-button{display:block}.desktop-nav.is-open{position:absolute;top:91px;left:0;right:0;display:grid;gap:0;padding:12px 26px 24px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(37,50,58,.08)}.desktop-nav.is-open a{padding:12px 0;border-bottom:1px solid var(--line)}.hero-photo{width:calc(100% - 32px);min-height:720px;padding:72px 36px}.intro,.section-heading-row,.profile-teaser,.two-column{grid-template-columns:1fr}.section-heading-row{gap:25px}.teaser-grid.three,.gallery-grid{grid-template-columns:repeat(2,1fr)}.teaser-card:nth-child(2){transform:none}.detail-card{grid-template-columns:1fr}.detail-card .image-placeholder{min-height:280px}.value-grid{grid-template-columns:1fr}.value-grid article{min-height:auto}.value-grid p{margin-top:28px}.work-wide{width:100%}.contact-options{grid-template-columns:1fr}}
@media(max-width:540px){.site-header{height:72px;padding:0 20px}.logo{font-size:17px}.logo-mark{width:29px;height:29px}.desktop-nav.is-open{top:71px}.hero-photo{width:calc(100% - 20px);min-height:650px;margin-bottom:28px;padding:60px 25px;border-radius:0 0 42px 6px;background-position:56% center}.hero-overlay{background:linear-gradient(90deg,rgba(18,44,55,.73),rgba(18,44,55,.32))}.hero-area{left:25px;bottom:22px}h1{font-size:36px}h2{font-size:27px}.section-shell,.content-block{padding:85px 22px}.sub-hero{padding:85px 22px 68px}.button-row{flex-direction:column}.button{width:100%}.stream-heading{width:calc(100% - 44px)}.logo-work{width:150px;height:96px}.teaser-grid.three,.works-grid,.gallery-grid{grid-template-columns:1fr}.work-wide{grid-column:auto}.work-photo,.work-wide .work-photo{min-height:290px}.work-caption{flex-direction:column;gap:1px}.portrait{min-height:430px;border-radius:70px 6px 70px 6px}footer{grid-template-columns:1fr}footer nav{justify-content:flex-start}.copyright{grid-column:auto}.simple-list article{grid-template-columns:42px 1fr}.simple-list p{grid-column:2}.price-row{flex-direction:column;gap:3px}.detail-copy{padding:32px 24px 38px}.contact-option{padding:40px 22px}}
