/* Shared visual rhythm: clear pink, warm white, readable charcoal. */
:root{--purple:#dc2868;--ink:#302c30;--muted:#716970;--light:#fff2f7;--line:#f0e3e9;--paper:#fff;--radius:20px}
body{font-feature-settings:'palt';-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
header{border-bottom-color:#f3edf0;background:#ffffffed}
.brand{letter-spacing:-1.4px}.brand span{color:#dc2868}
.eyebrow{color:#b44970;font-size:10px;letter-spacing:.19em;font-weight:600}
.eyebrow:before{width:5px;height:5px;background:#ee6a9b}
h1,h2,h3{text-wrap:balance}p{overflow-wrap:anywhere}
.btn{min-height:50px;border-radius:999px;box-shadow:none;letter-spacing:.02em;font-weight:600;transition:background .2s,transform .2s,box-shadow .2s}
.btn:not(.secondary){background:#dc2868;border-color:#dc2868;color:#fff}
.btn:not(.secondary):hover{background:#c51d58;border-color:#c51d58;box-shadow:0 8px 24px #dc28681a}
.btn.secondary{border-color:#e4d4dc;background:#fff;color:#5b424e}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #e64c88;outline-offset:4px}
.text-link{color:#66505b;border-color:#d9b5c4;line-height:1.8;padding-block:6px}
#main-nav>a[href='consultation.html'] .nav-label{color:#c51d58}
.home .motion-hero{column-gap:60px;padding-top:52px}
.home .motion-hero h1{font-size:clamp(60px,6.3vw,84px);line-height:1.36;letter-spacing:-.055em;font-weight:600;margin:24px 0 26px}
.home .motion-hero .accent{color:#dc2868}
.hero-statement{font-size:16px;line-height:1.9;letter-spacing:.02em}
.hero-small{font-size:13px;color:#756870;line-height:1.95}
.home-specialties{margin-top:23px}.home-specialties span{font-size:10px;letter-spacing:.025em;padding:6px 13px;background:#fff;border-color:#f0dee6;color:#8a5d70}
.home .hero-actions{gap:25px;margin-top:25px}
.home .hero-actions>.btn{box-shadow:0 8px 25px #dc286817;padding:16px 27px}
.home .motion-stage{background:radial-gradient(ellipse at 24% 13%,#fff9fc,#ffcee1 48%,#ff9bc4);box-shadow:0 20px 50px #cf467d10;border:1px solid #fff0f6}
.hero-bottom{color:#9a7b89;border-color:#f0e3e9}
.home .section{padding-top:65px;padding-bottom:40px}
.home .section-head h2{font-size:30px;font-weight:600;letter-spacing:.015em}
.home .home-services{gap:20px}
.home .home-service,.home .home-service:nth-child(2),.home .home-service:nth-child(3){border:1px solid #f0e1e7;background:#fffbfd;border-radius:20px;padding:27px;transition:transform .25s,border-color .25s,box-shadow .25s}
.home .home-service:nth-child(2){background:#fff8f8}.home .home-service:nth-child(3){background:#fffaf6}
.home .home-service:hover{transform:translateY(-4px);border-color:#f0a7c2;box-shadow:0 12px 30px #a53d6610}
.home .home-service h3{font-size:19px;line-height:1.65;letter-spacing:.01em}
.home .home-service p{font-size:12px;line-height:1.95;color:#72676d}
.home .service-top{color:#ac5979;font-size:9px}.home .service-bottom{border-color:#ecdce3;color:#815065;font-size:11px}
.home .home-about{padding:42px 0;margin:15px 0 42px;border-color:#f0e3e9}
.home .home-about .about-title{font-size:29px;font-weight:600}
.home .home-about .studio-description{font-size:14px;line-height:2.15;color:#71656c}
.home .home-about .signature{font-size:17px;color:#b14970}
.home .home-contact{padding:42px 42px 28px;border-radius:24px;background:linear-gradient(120deg,#fff6fa,#ffe6f0);border:1px solid #f7dbe7}
.home .home-contact .consultation-title{font-size:32px;line-height:1.6;font-weight:600;letter-spacing:.015em}
.home .home-contact .consultation-note{font-size:13px;line-height:2;color:#7c5e6c}
.home .home-contact .btn{background:#dc2868;border-color:#dc2868;color:#fff}
.invitation-note,.home-motion-control{color:#886978}
.section-head h2,.intro-grid h2{font-weight:600;letter-spacing:.01em}
.price-card,.panel{border-color:#eee2e7;box-shadow:none;background:#fff;border-radius:20px}
.price-card.featured{border-color:#ed8fb2;background:#fff8fb;box-shadow:0 10px 30px #b6407010}
.price-card .price{letter-spacing:-.04em;color:#393036}.price-card li{line-height:1.95}
.plan-desc,.intro-grid p{line-height:2;color:#716970}
.contact-banner{border-radius:24px;background:#fff0f6;border-color:#f4d8e4}
.contact-banner h2{font-weight:600;color:#3b3036}
.contact-form-shell{border-color:#eedfe6;box-shadow:0 16px 50px #a33a6710;background:#fff}
.field input,.field select,.field textarea{background:#fffbfd;border-color:#e9dbe2;min-height:49px}
.field input:focus,.field select:focus,.field textarea:focus{outline-color:#f8c6d9;border-color:#db6c96}
.contact-intro h1{color:#dc2868;letter-spacing:-.045em}
footer{background:#fff8fb;border-color:#f0e3e9;color:#7e6e77}footer p{line-height:2}
.consult-hero{background:linear-gradient(130deg,#fff,#fff3f8)}
.consult-hero h1{font-weight:600;letter-spacing:-.025em}
.consult-hero .consult-lead{font-size:14px;color:#6e6169;line-height:2}
.consult-hero .consult-cta{background:#dc2868;border-color:#dc2868;box-shadow:0 8px 24px #dc286817}
.consult-hero .consult-cta-label{font-size:14px}
.consult-hero .consult-cta-note{font-size:11px;color:#786a72}
.consult-value-list{color:#85566b;font-size:12px}
.consult-hero-bottom{border-color:#f1e2e9}
.consult-facts{background:#fff;border-color:#eee1e7;border-radius:20px}
.consult-facts dt{color:#a35a78;font-size:11px}.consult-facts dd{color:#4d3b44}
.consult-reservation-heading>p{color:#ac285a;background:#fff0f6}
.consult-calendar-note{color:#7b6b73;font-size:13px}
.consult-details{background:#fff7fb;border-color:#f4dfe8}
.consult-topics article{border-color:#f1dfe7}
@media(max-width:760px){
 header{height:80px}.brand{font-size:25px}.menu-toggle{width:43px;height:43px;border-color:#ecdce3;background:#fff;color:#7a4f62}
 #main-nav{background:#fff}#main-nav>a{border-bottom-color:#f4eaf0}
 .wrap{width:calc(100% - 40px)}
 .home .motion-hero{padding-top:30px;column-gap:0}
 .home .motion-hero h1{font-size:clamp(48px,13vw,65px);line-height:1.38;letter-spacing:-.055em;margin:22px 0}
 .hero-copy .eyebrow{font-size:8px;letter-spacing:.14em}
 .hero-statement{font-size:13px;line-height:1.9}.hero-small{font-size:12px;line-height:1.9;margin-top:8px}
 .home-specialties{margin-top:18px}.home-specialties span{font-size:9px;padding:5px 10px}
 .home .motion-stage{margin-top:27px;height:285px;border-radius:65px 65px 20px 20px}
 .home .hero-actions{display:flex;align-items:stretch;flex-direction:column;gap:9px;margin:23px 0 30px}
 .home .hero-actions>.btn{justify-content:space-between;min-height:53px;font-size:13px;padding:14px 22px;width:100%}
 .home .hero-actions>.text-link{align-self:center;font-size:12px;padding:6px 2px}
 .hero-bottom{padding-block:16px;letter-spacing:.13em;font-size:7px}
 .home .section{padding:38px 0 20px}.home .section-head h2{font-size:25px}
 .home .home-services{gap:14px}
 .home .home-service,.home .home-service:nth-child(2),.home .home-service:nth-child(3){padding:23px 20px 18px;border-radius:18px}
 .home .home-service h3{font-size:17px;line-height:1.6;margin:10px 0 7px}
 .home .home-service p{font-size:11px;line-height:1.9}
 .home .service-bottom{font-size:11px;padding-top:14px;margin-top:16px}
 .home .home-about{padding:27px 0;margin:15px 0 32px;gap:14px}
 .home .home-about .about-title{font-size:25px}.home .home-about .studio-description{font-size:13px;line-height:2.1}
 .home .home-contact{padding:29px 23px 20px;border-radius:20px}
 .home .home-contact .consultation-title{font-size:25px;line-height:1.6;letter-spacing:0}
 .home .home-contact .consultation-note{font-size:11px;line-height:1.95}
 .home .home-contact .btn{font-size:12px;min-height:51px}
 .invitation-note{font-size:10px;color:#886978}
 .section-head h2{font-size:25px;line-height:1.65}.lead{font-size:13px}
 .consult-hero-copy{padding:28px 0 25px}
 .consult-hero h1{font-size:clamp(25px,7.2vw,36px);line-height:1.48}
 .consult-hero h1 .friendly-title-accent{font-size:1.16em;line-height:1.45}
 .consult-hero .consult-lead{font-size:13px;line-height:1.95}
 .consult-value-list{font-size:11px;gap:7px 14px}
 .consult-hero .consult-cta-label{font-size:14px}.consult-hero .consult-cta{min-height:54px}
 .consult-hero .consult-cta-note{font-size:11px;line-height:1.9}
 .consult-calendar-note{font-size:11px}.consult-facts dt{font-size:10px}
 .consult-reservation h2{font-size:23px;letter-spacing:.01em}
 footer{padding-top:36px}footer p{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.home .home-service,.btn{transition:none}}

/* Readable supporting copy, intentional line breaks, defined logo scope. */
.contact-banner .service-contact-copy{color:#755465;font-size:14px;line-height:1.95;font-weight:400;opacity:1}
.contact-banner .service-contact-copy>span{color:inherit;opacity:1;white-space:normal}
.contact-banner .eyebrow{color:#a9446c;font-size:10px;letter-spacing:.15em;opacity:1}
.contact-banner .eyebrow:before{background:#d94d83}
.youtube-consult-panel h3{font-size:clamp(23px,2.5vw,29px);font-weight:600;line-height:1.65;letter-spacing:.01em;text-wrap:initial;margin:20px 0}
.youtube-consult-panel h3>span{display:block}
.youtube-consult-panel .youtube-consult-copy{max-width:620px;margin-bottom:23px}
.youtube-consult-panel .youtube-consult-copy p{font-size:14px;line-height:2;color:#71626b;margin:0 0 12px;text-wrap:pretty;line-break:strict;word-break:normal;overflow-wrap:normal}
.logo-plan .price{font-size:clamp(33px,4vw,48px);white-space:nowrap}
.logo-plan .price small{font-size:12px;letter-spacing:0}
.logo-plan>p{font-size:14px;line-height:2;color:#71626b}
.logo-plan-includes{list-style:none;padding:0;margin:22px 0;font-size:13px;line-height:1.9;color:#65535d}
.logo-plan-includes li{position:relative;padding-left:18px;margin:7px 0}
.logo-plan-includes li:before{content:'✓';position:absolute;left:0;color:#c7356e}
.logo-scope-note{border-top:1px solid #eedee6;padding-top:16px;font-size:12px;line-height:1.9;color:#75616d}
.logo-scope-note p{margin:0 0 8px}.logo-scope-note p:first-child{font-weight:600;color:#96506e}
.logo-scope-note ul{padding-left:1.2em;margin:8px 0 12px}.logo-scope-note li{margin-bottom:7px}
/* Google keeps its native booking UI; hue changes only its embedded rendering. */
.consult-booking-widget iframe{filter:hue-rotate(122deg) saturate(.88)}
@media(max-width:760px){
 .contact-banner .service-contact-copy{font-size:13px;line-height:1.95;margin-top:16px}
 .contact-banner .eyebrow{font-size:9px;letter-spacing:.12em}
 .youtube-consult-panel{padding:25px 22px}
 .youtube-consult-panel h3{font-size:clamp(19px,5.1vw,24px);line-height:1.7;margin:18px 0;letter-spacing:0}
 .youtube-consult-panel h3>span{white-space:nowrap}
 .youtube-consult-panel .youtube-consult-copy p{font-size:13px;line-height:1.95;margin-bottom:13px}
 .desktop-copy-break{display:none}
 .youtube-consult-panel .text-link{font-size:12px}
 .logo-plan>p{font-size:13px}.logo-plan-includes{font-size:12px}.logo-scope-note{font-size:12px}
}

/* A clear visual entrance to finished website projects. */
.portfolio-web.populated-works>.section-head{padding:28px 30px;margin-bottom:30px;background:linear-gradient(110deg,#fff0f6,#fff8fb);border-left:5px solid #dc2868;border-radius:4px 20px 20px 4px;align-items:center}
.portfolio-web.populated-works>.section-head .eyebrow{display:inline-flex;background:#dc2868;color:#fff;border-radius:99px;padding:5px 12px;font-size:10px;letter-spacing:.14em}
.portfolio-web.populated-works>.section-head .eyebrow:before{display:none}
.portfolio-web.populated-works>.section-head h2{color:#422d38;margin:13px 0 0;font-size:30px;font-weight:600;letter-spacing:.01em}
.portfolio-web.populated-works>.section-head>p{color:#855269;font-size:13px;line-height:1.9;margin:0}
.portfolio-web .work-browser{border:1px solid #efabc5;box-shadow:0 12px 30px #b7366510}
.portfolio-web .work-browser-bar{background:#dc2868;color:#fff;border-color:#dc2868}
.portfolio-web .work-browser-bar span{color:#fff;font-weight:500}
.portfolio-web .work-browser-bar i{background:#ffffffa6}
.portfolio-web .portfolio-caption>span{display:inline-flex;align-items:center;gap:5px;background:#fff0f6;color:#b92058;padding:6px 12px;border-radius:99px;font-size:12px;font-weight:600;white-space:nowrap}
.portfolio-web .work-category{display:inline-flex;border-left:3px solid #e84e87;padding-left:9px;color:#aa3e66;font-size:10px;letter-spacing:.12em}
.portfolio-web .work-description{color:#74636d;line-height:1.9}
@media(max-width:760px){
 .portfolio-web.populated-works>.section-head{display:block;padding:22px 20px;margin-top:30px;margin-bottom:25px;border-radius:4px 16px 16px 4px;border-left-width:4px}
 .portfolio-web.populated-works>.section-head h2{font-size:clamp(21px,5.7vw,27px);line-height:1.6;margin-top:12px}
 .portfolio-web.populated-works>.section-head>p{font-size:12px;margin-top:12px;line-height:1.85}
 .portfolio-web.populated-works>.section-head>p br{display:none}
 .portfolio-web .work-browser-bar{min-height:35px}
 .portfolio-web .portfolio-caption{gap:10px;align-items:center}
 .portfolio-web .portfolio-caption h3{font-size:17px;line-height:1.6}
 .portfolio-web .portfolio-caption>span{font-size:10px;padding:6px 10px}
 .portfolio-web .work-category{font-size:9px}
}

/* Match each preview frame to the work it presents. */
.portfolio-web .work-theme-reona{--work-bar:#15523e;--work-label:#fff;--work-border:#c6ddd1;--work-soft:#edf6ef;--work-accent:#15523e;--work-dot:#d4e8a6}
.portfolio-web .work-theme-a4d{--work-bar:#17131d;--work-label:#e2ff60;--work-border:#dcd4e4;--work-soft:#f1edf5;--work-accent:#59416e;--work-dot:#caff52}
.portfolio-web .work-theme-training{--work-bar:#e4ecd9;--work-label:#3e5034;--work-border:#d2ddc8;--work-soft:#f0f5e9;--work-accent:#4d6840;--work-dot:#7c9468}
.portfolio-web .work-theme-velqueen{--work-bar:#fff0cd;--work-label:#655039;--work-border:#efdec1;--work-soft:#fff7e8;--work-accent:#886233;--work-dot:#d3ad67}
.portfolio-web .completed-work .work-browser{border-color:var(--work-border);box-shadow:0 12px 30px #3028320a}
.portfolio-web .completed-work .work-browser-bar{background:var(--work-bar);border-color:var(--work-border);color:var(--work-label)}
.portfolio-web .completed-work .work-browser-bar span{color:var(--work-label)}
.portfolio-web .completed-work .work-browser-bar i{background:var(--work-dot)}
.portfolio-web .completed-work .portfolio-caption>span{background:var(--work-soft);color:var(--work-accent)}
.portfolio-web .completed-work .work-category{border-color:var(--work-accent);color:var(--work-accent)}
.portfolio-web .work-theme-reona .work-ai-note{background:#f0f6ef;border-color:#d8e4d6;box-shadow:none}
.portfolio-web .work-theme-reona .work-ai-label,.portfolio-web .work-theme-reona .work-ai-note>a{color:#256047}
.portfolio-web .work-theme-reona .work-ai-note h4{color:#304e3d}
/* Crisp vector accent, no platform emoji glyph. */
.thumbnail-stage .thumb-spark.spark-one,.thumb-spark.spark-one{display:grid;place-items:center;color:#d82f6d;background:#fff6fa;border:1px solid #f2bfd3;border-radius:16px;width:59px;height:59px;box-shadow:0 8px 20px #c6396c12;font-family:inherit;filter:none;text-shadow:none}
.thumb-spark.spark-one svg{width:34px;height:34px;display:block}
.consult-friendly-photo>div{background-image:url('assets/consultation-portrait-natural.png');background-size:cover;background-position:52% 24%}
@media(max-width:760px){
 .thumb-spark.spark-one{width:38px;height:38px;border-radius:11px}.thumb-spark.spark-one svg{width:23px;height:23px}
 .consult-friendly-photo{height:240px}
 .consult-friendly-photo>div{background-size:cover;background-position:center 24%}
}
/* Recognizable video cue, with the original floating motion retained. */
.thumbnail-stage .thumb-spark.youtube-play-accent{width:64px;height:46px;border:0;border-radius:13px;background:transparent;box-shadow:0 7px 18px #d9233520;color:#fff;padding:0;transform:rotate(-9deg)}
.thumb-spark.youtube-play-accent svg{width:100%;height:100%;display:block}
.thumbnail-production .section-head h2{font-size:29px;line-height:1.6}
.production-types{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.production-types article{background:#fff8fb;border:1px solid #f0dfe6;border-radius:20px;padding:27px}
.production-type{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.13em;color:#bc3063}
.production-types h3{font-size:18px;margin:17px 0 12px;line-height:1.7}
.production-types p{font-size:13px;color:#79636f;line-height:2;margin:0}
@media(max-width:760px){
 .thumbnail-stage .thumb-spark.youtube-play-accent{width:45px;height:32px;border-radius:9px;right:4%;top:48%}
 .thumbnail-production .section-head h2{font-size:24px}
 .production-types{grid-template-columns:1fr;gap:12px}
 .production-types article{padding:22px 24px;border-radius:17px}
 .production-types h3{font-size:18px;margin:10px 0 7px}
 .production-types p{font-size:12px}.production-types p br{display:none}
}
.thumbnail-stage .thumb-spark.youtube-play-accent{animation:youtube-accent-float 6s ease-in-out infinite}
@keyframes youtube-accent-float{0%,100%{transform:translateY(0) rotate(-9deg)}50%{transform:translateY(-7px) rotate(-4deg)}}
.thumbnail-motion-paused .youtube-play-accent{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.thumbnail-stage .thumb-spark.youtube-play-accent{animation:none}}
