The college admissions process is competitive, and students are constantly seeking ways to stand out from the crowd. One powerful approach that can set applicants apart is turning their hobbies into passion projects. Transforming a hobby into a well-defined, focused endeavor demonstrates dedication, creativity, and commitment, all qualities that college admissions officers value. In this comprehensive guide, we will explore the steps students can take to turn their hobbies into compelling passion projects that captivate admissions committees and showcase their unique interests and talents.
Step 1: Identifying the Passionate Hobby
The first step on this journey is to identify a hobby that truly ignites the student's passion. It could be something they have enjoyed for years or a newly discovered interest. Whether it's playing a musical instrument, photography, coding, cooking, or even writing, the key is to choose a hobby that resonates deeply with the student. Passion is the fuel that drives the project, so it's crucial to select a hobby that brings joy and a sense of purpose.
Step 2: Setting Clear Goals
Once the passion is identified, the next step is to set clear and achievable goals for the passion project. These goals will provide direction and focus, allowing the student to channel their energy effectively. The objectives can vary depending on the nature of the hobby. For example, a student passionate about photography may set a goal to create a captivating photo series on a specific theme, while an aspiring musician may aim to compose an original piece for a local performance.
Setting measurable and realistic goals helps students track their progress and stay motivated throughout the project. Moreover, articulating these goals in their college applications shows admissions officers that the student is purpose-driven and proactive in pursuing their interests.
Step 3: Creating a Plan of Action
With clear goals in place, it's time to develop a detailed plan of action for the passion project. This involves outlining the necessary steps to achieve the objectives and identifying any resources, materials, or support required. For instance, if the hobby is writing, the student might plan to enroll in writing workshops, join a writers' group for feedback, and set aside dedicated time for daily writing practice.
In certain cases, finding a mentor or coach can be immensely beneficial. A mentor provides valuable guidance, encouragement, and expertise, enhancing the student's skills and enriching the overall experience of the passion project.
Step 4: Documenting Progress and Growth
As the passion project unfolds, it is crucial to document every step of the journey. Keeping a journal, taking photographs, or creating videos are excellent ways to record progress and capture moments of inspiration and growth. This documentation serves multiple purposes: it becomes a valuable record of the student's efforts and achievements, can be used in their college application portfolio, and provides material for any future presentations or showcases.
Step 5: Sharing the Passion Project
Sharing the passion project with others is an essential aspect of turning a hobby into a compelling narrative for college admissions. There are various ways to do this, depending on the nature of the project. For artistic pursuits like painting, sculpture, or photography, students can participate in local art exhibitions or submit their work to art competitions. Musicians can arrange recitals or perform at community events. Tech enthusiasts might create a website or app to showcase their coding projects.
Furthermore, the power of social media and digital platforms allows students to reach a wider audience with their passion projects. Creating a website, blog, or social media profile dedicated to their work enables them to share their journey, connect with like-minded individuals, and receive feedback and support from a global community.
Step 6: Reflecting on the Impact
As the passion project comes to fruition, students should take the time to reflect on the impact it had on their personal growth, skills, and perspective. Reflective writing or video journals can provide valuable insights into the student's transformative journey. Admissions officers appreciate applicants who demonstrate self-awareness and can articulate how their experiences have shaped them as individuals.
Turning a hobby into a passion project is not just about impressing colleges; it is also an opportunity for self-discovery and self-expression. By reflecting on the journey, students gain a deeper understanding of themselves and their passions, setting them on a path of lifelong learning and fulfillment.
Choose teachers who know your work, prepare useful reminders, and manage recommendation deadlines without scripting praise. Includes a downloadable planner.
Read more →
Understand admission by university, school, or major before choosing a route. Map program access, internal-transfer rules, and honest academic fit.
Read more →
Decide whether to retake or submit an SAT or ACT score using current college policies, academic context, and opportunity cost—not arbitrary score cutoffs.
Read more →
Transforming a hobby into a passion project is a powerful way for students to showcase their unique interests, talents, and commitment on their college applications. The journey from hobby to passion project demonstrates determination, creativity, and a proactive approach to personal growth. By following these steps and embracing the joy and purpose of their passions, students can present a compelling narrative that captures the attention of college admissions officers.
At The Ivy Institute, we believe in harnessing the full potential of students' passions and turning them into remarkable passion projects. Our experienced college admissions consultants provide personalized guidance, ensuring that each applicant's journey shines brightly in their college application. By leveraging hobbies and turning them into passion projects, students can confidently embark on their college admissions journey, knowing they have a unique story to tell and a bright future ahead. Let us support you in showcasing the incredible growth and transformation that comes from pursuing your passions wholeheartedly. Together, we will create a college application that stands out and paves the way for your academic success and beyond.
-content-field="published-on"],.blog-item-wrapper header h1,article header h1){display:none!important}
body.tii-blog-title-live .tii-blog-native-hidden{display:none!important}
:is(html,body).sqs-edit-mode-active #tii-blog-article-title,:is(html,body).sqs-site-styles-active #tii-blog-article-title{display:none!important}
:root{--tii-n0:#04101f;--tii-n1:#0a1e37;--tii-n2:#0e2745;--tii-gold:#ead49f;--tii-blue:#8fb7df}
.tii-detective-blog-hero,.tii-detective-blog-hero *{box-sizing:border-box}
.tii-detective-blog-hero{position:relative;left:50%;width:100vw;max-width:none;margin:0 0 0 -50vw;overflow:hidden;isolation:isolate;contain:layout paint style;background:radial-gradient(circle at 78% 24%,rgba(78,131,188,.27),transparent 31%),radial-gradient(circle at 18% 70%,rgba(213,181,111,.17),transparent 31%),linear-gradient(145deg,var(--tii-n0),var(--tii-n1) 54%,var(--tii-n2))}
@supports(overflow:clip){.tii-detective-blog-hero{overflow:clip}}
.tii-detective-blog-hero::after{content:"";position:absolute;z-index:0;inset:auto 0 0;height:190px;pointer-events:none;background:linear-gradient(to top,rgba(4,16,31,.72),rgba(4,16,31,.32) 46%,transparent)}
.tii-db-body{position:relative;z-index:2;width:min(1320px,calc(100% - 64px));margin:auto}
.tii-db-copy{position:relative;z-index:3;width:68%;padding:36px 18px 30px 24px;display:flex;flex-direction:column;gap:15px;border-bottom:1px solid rgba(255,255,255,.12);contain:layout style}
.tii-db-kicker-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:30px}
.tii-db-chip,.tii-db-status,.tii-db-meta-item{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.20)}
.tii-db-chip,.tii-db-status,.tii-db-pulse-note{display:inline-flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap}
.tii-db-chip,.tii-db-status{padding:8px 12px;border-radius:999px;color:#fff}.tii-db-chip{transform:translateX(-5%)}.tii-db-pulse-note{color:rgba(255,255,255,.76)}
.tii-db-status-dot,.tii-db-pulse-dot{position:relative;width:7px;height:7px;border-radius:50%;display:inline-block;flex:0 0 7px;background:#fff}
.tii-db-status-dot::after,.tii-db-pulse-dot::after{content:"";position:absolute;inset:-1px;border:1px solid currentColor;border-radius:50%;opacity:0;transform:scale(1);animation:tiiRippleX 2.2s ease-out infinite}
.tii-db-pulse-text--mobile{display:none}
.tii-db-title{margin:0;max-width:23ch;padding-bottom:.12em;display:block;contain:paint;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(3rem,5.35vw,5rem);font-weight:800;line-height:1.03;letter-spacing:-.055em;text-wrap:balance;color:#fff;background:linear-gradient(135deg,#fff 0%,#fff 9%,var(--tii-gold) 18%,var(--tii-blue) 31%,#fff 43%,#fff 50%,#fff 59%,var(--tii-gold) 68%,var(--tii-blue) 81%,#fff 93%,#fff 100%);background-size:200% 200%;background-position:100% 100%;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:tiiTitleFlow 9.5s steps(128,end) infinite;-webkit-font-smoothing:antialiased}
.tii-db-outline-intro{margin:2px 0 0;max-width:72ch;color:#fff;font:650 1rem/1.55 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.tii-db-outline-columns{width:min(100%,78ch);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;column-gap:clamp(24px,3vw,46px)}.tii-db-outline{width:min(100%,78ch);margin:0;padding:0 0 0 1.25rem;display:grid;gap:.44rem;color:#fff}.tii-db-outline-columns .tii-db-outline{width:100%}.tii-db-outline li{margin:0;padding-left:.18rem;color:#fff;font:500 .95rem/1.42 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;break-inside:avoid}.tii-db-outline li::marker{color:#fff}.tii-db-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:3px}.tii-db-meta-item{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:13px;color:rgba(255,255,255,.84);font-size:.8rem;line-height:1.2}.tii-db-meta-item svg{width:14px;height:14px;stroke:currentColor;flex:0 0 14px}
.tii-db-stage{position:absolute;z-index:2;inset:0 0 0 auto;width:34%;overflow:hidden;touch-action:none;padding-left:14px;contain:layout paint style}
@supports(overflow:clip){.tii-db-stage{overflow:clip}}
@media(min-width:781px){.tii-db-stage{--g:max(32px,calc((100vw - 1320px)/2));right:calc(-1*var(--g));width:calc(34% + var(--g))}}
.tii-db-stage .tii-db-status{position:absolute;top:64px;right:14px;z-index:8;max-width:calc(100% - 28px);justify-content:center;text-align:center;overflow:hidden;text-overflow:ellipsis}.tii-db-status--mobile{display:none}
.tii-db-campus-field{position:absolute;z-index:2;inset:90px 10px 64px;contain:layout paint style}
.tii-db-campus-blip{position:absolute;z-index:3;min-width:90px;width:min(136px,24vw);padding:7px 9px 7px 7px;border-radius:15px;border:1px solid rgba(49,69,86,.10);background:rgba(255,255,255,.68);box-shadow:0 14px 26px rgba(49,69,86,.08);display:flex;align-items:center;gap:8px;pointer-events:none;opacity:0;transform:translate3d(0,10px,0) scale(.96);contain:layout paint style;animation:tiiCardScan 32s ease-in-out calc(5.9s + var(--d,0s)) infinite both}
.tii-db-campus-blip svg{width:28px;height:28px;flex:0 0 28px}.tii-db-campus-blip>div{min-width:0;line-height:1}.tii-db-campus-label{display:block;color:#314556;font-size:.62rem;line-height:1;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tii-db-campus-sub{display:block;margin-top:2px;color:#627888;font-size:.52rem;line-height:calc(1em + 2px);letter-spacing:.12em;text-transform:uppercase}
.tii-db-campus-1{top:3%;left:3%;--d:0s}.tii-db-campus-2{top:5%;left:38%;--d:2s}.tii-db-campus-3{top:4%;right:4%;--d:4s}.tii-db-campus-4{top:21%;left:13%;--d:6s}.tii-db-campus-5{top:19%;right:18%;--d:8s}.tii-db-campus-6{top:35%;left:43%;--d:10s}.tii-db-campus-7{top:40%;left:3%;--d:12s}.tii-db-campus-8{top:42%;right:3%;--d:14s}.tii-db-campus-9{top:58%;left:16%;--d:16s}.tii-db-campus-10{top:57%;right:27%;--d:18s}.tii-db-campus-11{top:70%;left:43%;--d:20s}.tii-db-campus-12{top:73%;right:7%;--d:22s}.tii-db-campus-13{bottom:2%;left:2%;--d:24s}.tii-db-campus-14{bottom:1%;left:27%;--d:26s}.tii-db-campus-15{bottom:3%;right:25%;--d:28s}.tii-db-campus-16{bottom:1%;right:2%;--d:30s}
.tii-db-scan-ring{position:absolute;width:210px;height:210px;border-radius:50%;border:1px dashed rgba(255,255,255,.20);left:48%;top:16%;opacity:.46;animation:tiiFloatRing 10s ease-in-out infinite}.tii-db-scan-ring::before,.tii-db-scan-ring::after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.12)}.tii-db-scan-ring::before{inset:18px}.tii-db-scan-ring::after{inset:38px}
.tii-db-magnifier-wrap{position:absolute;inset:0 auto 0 50%;z-index:10000;width:min(1320px,calc(100% - 64px));transform:translateX(-50%);pointer-events:none;overflow:visible;contain:layout style}.tii-db-magnifier-manual-shift,.tii-db-magnifier-path,.tii-db-magnifier-patrol,.tii-db-magnifier-rig{position:absolute;inset:0}.tii-db-magnifier-manual-shift{z-index:10000;transform:translate3d(0,0,0)}.tii-returning .tii-db-magnifier-manual-shift{transition:transform 650ms cubic-bezier(.22,1,.36,1)}
.tii-db-magnifier-path{left:56%;top:calc(5.5% + 50px);width:112px;height:112px;animation:tiiEnter 5.9s cubic-bezier(.22,.72,.24,1) 1 both}.tii-db-magnifier-patrol{animation:tiiPatrol 32s ease-in-out 5.9s infinite}.tii-db-magnifier-rig{z-index:10001;animation:tiiTilt 6.4s ease-in-out infinite;transform-origin:64% 34%}.tii-db-magnifier-shadow{position:absolute;left:28px;top:89px;width:64px;height:17px;border-radius:50%;background:radial-gradient(ellipse,rgba(49,69,86,.18),rgba(49,69,86,0) 72%);animation:tiiShadow 6.4s ease-in-out infinite}.tii-db-magnifier-image{position:absolute;z-index:10003;left:0;top:0;width:104px;height:104px;object-fit:contain;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 7px 12px rgba(49,69,86,.13));transform:translateZ(0)}
.tii-db-magnifier-zoom{position:absolute;z-index:10005;left:42px;top:8px;width:51px;height:51px;border-radius:50%;overflow:hidden;pointer-events:none;border:1px solid rgba(255,255,255,.46);box-shadow:inset 0 0 0 1px rgba(255,255,255,.32),inset 0 0 13px rgba(186,220,241,.16),0 2px 9px rgba(1,9,20,.15);background:radial-gradient(circle at 31% 24%,rgba(255,255,255,.42) 0 7%,rgba(255,255,255,.13) 18%,transparent 42%),linear-gradient(135deg,rgba(224,240,250,.31),rgba(114,154,184,.12) 54%,rgba(255,255,255,.22))}.tii-db-magnifier-zoom::after{content:"";position:absolute;inset:8% 12% 52% 14%;border-radius:50%;background:linear-gradient(135deg,rgba(255,255,255,.34),rgba(255,255,255,0));opacity:.8;transform:rotate(-16deg)}
.tii-db-magnifier-beam{position:absolute;z-index:10002;left:65px;top:2px;width:190px;height:72px;transform-origin:0 50%;clip-path:polygon(0 44%,100% 0,100% 100%,0 56%);background:linear-gradient(90deg,rgba(255,255,255,.58),rgba(191,224,241,.30) 42%,rgba(102,127,146,0));opacity:.48;mix-blend-mode:screen;animation:tiiBeam 4.2s ease-in-out infinite}.tii-db-magnifier-trigger{position:absolute;left:47px;top:1px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(102,127,146,.28)}.tii-db-magnifier-trigger::after{content:"";position:absolute;inset:-1px;border:1px solid rgba(102,127,146,.28);border-radius:50%;opacity:.45;transform:scale(.84);animation:tiiTrigger 4.2s ease-out infinite}
.tii-magnifier-manual :is(.tii-db-magnifier-path,.tii-db-magnifier-patrol,.tii-db-magnifier-rig,.tii-db-magnifier-shadow,.tii-db-magnifier-beam,.tii-db-magnifier-trigger,.tii-db-campus-blip){animation-play-state:paused}.tii-magnifier-manual .tii-db-campus-blip{animation:none}
.tii-hero-offscreen{content-visibility:auto;contain-intrinsic-size:auto 650px}.tii-hero-offscreen :is(.tii-db-title,.tii-db-campus-blip,.tii-db-scan-ring,.tii-db-magnifier-path,.tii-db-magnifier-patrol,.tii-db-magnifier-rig,.tii-db-magnifier-shadow,.tii-db-magnifier-beam){animation-play-state:paused!important}.tii-hero-offscreen .tii-db-status-dot::after,.tii-hero-offscreen .tii-db-pulse-dot::after,.tii-hero-offscreen .tii-db-magnifier-trigger::after{animation-play-state:paused!important}
@keyframes tiiTitleFlow{from{background-position:100% 100%}to{background-position:0 0}}@keyframes tiiRippleX{0%{opacity:.45;transform:scale(.9)}75%,100%{opacity:0;transform:scale(2.4)}}@keyframes tiiCardScan{0%,100%{opacity:0;transform:translate3d(0,10px,0) scale(.96)}3%,10%{opacity:1;transform:translate3d(0,0,0) scale(1)}15%{opacity:0;transform:translate3d(0,-7px,0) scale(1.01)}}@keyframes tiiFloatRing{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(10px,6px,0) scale(1.04)}}
@keyframes tiiPatrol{0%,100%{transform:translate3d(0,0,0)}12%{transform:translate3d(clamp(72px,12vw,180px),2px,0)}25%{transform:translate3d(clamp(145px,23vw,285px),clamp(18px,4vh,42px),0)}38%{transform:translate3d(clamp(95px,16vw,210px),clamp(78px,15vh,155px),0)}51%{transform:translate3d(clamp(8px,2vw,34px),clamp(120px,23vh,225px),0)}64%{transform:translate3d(clamp(125px,20vw,255px),clamp(145px,27vh,255px),0)}77%{transform:translate3d(clamp(185px,29vw,340px),clamp(76px,14vh,145px),0)}89%{transform:translate3d(clamp(58px,9vw,128px),clamp(42px,8vh,88px),0)}}
@keyframes tiiPatrolM{0%,100%{transform:translate3d(0,0,0)}20%{transform:translate3d(clamp(42px,18vw,82px),2px,0)}40%{transform:translate3d(clamp(16px,7vw,38px),34px,0)}60%{transform:translate3d(clamp(48px,20vw,92px),72px,0)}80%{transform:translate3d(4px,56px,0)}}@keyframes tiiTilt{0%,100%{transform:rotate(-7deg) scale(1)}50%{transform:rotate(4deg) scale(1.02)}}@keyframes tiiShadow{0%,100%{transform:scale(1);opacity:.16}50%{transform:scale(.92);opacity:.10}}@keyframes tiiBeam{0%,100%{opacity:.24;transform:rotate(-12deg) scaleX(.91)}50%{opacity:.56;transform:rotate(-9deg) scaleX(1.05)}}@keyframes tiiTrigger{0%{opacity:.46;transform:scale(.84)}75%,100%{opacity:0;transform:scale(1.55)}}
@keyframes tiiEnter{0%{opacity:0;transform:translate3d(clamp(-160px,-11vw,-72px),-230px,0)}14%{opacity:.68;transform:translate3d(clamp(-150px,-10vw,-66px),-174px,0)}36%{opacity:1;transform:translate3d(clamp(-112px,-7vw,-48px),-108px,0)}64%{opacity:1;transform:translate3d(clamp(-58px,-3.5vw,-24px),-48px,0)}84%{opacity:1;transform:translate3d(-8px,-8px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}@keyframes tiiEnterM{0%{opacity:0;transform:translate3d(clamp(-176px,-51vw,-128px),-88px,0)}20%{opacity:.72;transform:translate3d(clamp(-146px,-40vw,-104px),-62px,0)}52%{opacity:1;transform:translate3d(clamp(-82px,-23vw,-58px),-30px,0)}82%{opacity:1;transform:translate3d(-10px,-5px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@media(max-width:1080px){.tii-db-copy{width:62%}.tii-db-stage{width:40%}.tii-db-title{max-width:16ch;font-size:clamp(2.8rem,5.7vw,4.45rem)}}
@media(max-width:780px){.tii-detective-blog-hero{padding-top:38px}.tii-db-body{width:min(100%,calc(100% - 20px));display:flex;flex-direction:column}.tii-db-stage{order:1;position:relative;inset:auto;width:100%;height:177px;min-height:177px;padding:0}.tii-db-copy{order:2;width:100%;padding:0 18px 24px;gap:13px}.tii-db-kicker-row{display:none}.tii-db-title{max-width:none;font-size:clamp(2.55rem,11vw,4rem);line-height:1.04;padding-bottom:.14em}.tii-db-outline-intro{font-size:.96rem;line-height:1.5}.tii-db-outline-columns{display:block;width:100%}.tii-db-outline-columns .tii-db-outline+.tii-db-outline{margin-top:.4rem}.tii-db-outline{width:100%;padding-left:1.16rem;gap:.4rem}.tii-db-outline li{font-size:.91rem;line-height:1.4}.tii-db-campus-field{inset:48px 6px 18px;transform:translate3d(0,-15px,0)}.tii-db-stage .tii-db-status--desktop{display:none}.tii-db-stage .tii-db-status--mobile{display:flex;top:15px;left:50%;right:auto;width:max-content;max-width:calc(100% - 24px);padding:0;border:0;background:transparent;transform:translateX(-50%)}.tii-db-stage .tii-db-status--mobile .tii-db-status-dot{color:#d8b85a;background:#d8b85a}.tii-db-campus-blip{min-width:84px;width:min(120px,35vw);padding:7px;border-radius:13px;max-height:72px;animation-duration:34s}.tii-db-campus-blip svg{width:24px;height:24px;flex-basis:24px}.tii-db-campus-label{font-size:.56rem}.tii-db-campus-sub{font-size:.48rem}.tii-db-campus-1{top:2%;left:2%}.tii-db-campus-2{top:4%;left:34%}.tii-db-campus-3{top:3%;right:2%}.tii-db-campus-4{top:19%;left:5%}.tii-db-campus-5{top:18%;right:9%}.tii-db-campus-6{top:34%;left:36%}.tii-db-campus-7{top:39%;left:1%}.tii-db-campus-8{top:40%;right:1%}.tii-db-campus-9{top:57%;left:6%}.tii-db-campus-10{top:56%;right:16%}.tii-db-campus-11{top:69%;left:34%}.tii-db-campus-12{top:71%;right:2%}.tii-db-campus-13{bottom:1%;left:1%}.tii-db-campus-14{bottom:0;left:22%}.tii-db-campus-15{bottom:2%;right:22%}.tii-db-campus-16{bottom:0;right:1%}.tii-db-campus-field>.tii-db-campus-blip:nth-child(even){display:none}.tii-db-magnifier-wrap{inset:38px 10px auto;width:auto;height:177px;transform:none}.tii-db-magnifier-path{left:54%;top:calc(9% + 35px);width:88px;height:88px;animation-name:tiiEnterM;animation-duration:4.35s}.tii-db-magnifier-patrol{animation-name:tiiPatrolM;animation-duration:34s;animation-delay:4.35s}.tii-db-magnifier-image{width:82px;height:82px}.tii-db-magnifier-zoom{left:33px;top:7px;width:40px;height:40px}.tii-db-magnifier-shadow{left:23px;top:70px;width:50px;height:13px}.tii-db-magnifier-beam{left:51px;top:1px;width:126px;height:56px}.tii-db-magnifier-trigger{left:36px;top:0;width:34px;height:34px}}
@media(min-width:781px) and (hover:hover) and (pointer:fine){.tii-detective-blog-hero.tii-magnifier-takeover,.tii-detective-blog-hero.tii-magnifier-takeover *{cursor:none!important}}
@media(prefers-reduced-motion:reduce){.tii-db-title,.tii-db-status-dot::after,.tii-db-pulse-dot::after,.tii-db-campus-blip,.tii-db-scan-ring,.tii-db-magnifier-path,.tii-db-magnifier-patrol,.tii-db-magnifier-rig,.tii-db-magnifier-shadow,.tii-db-magnifier-beam,.tii-db-magnifier-trigger::after{animation:none!important}.tii-db-title{background-position:50% 50%}.tii-db-campus-blip{opacity:1;transform:none}}
-webkit-backdrop-filter: blur(20px) saturate(170%) contrast(.72) brightness(1.12);
backdrop-filter: blur(20px) saturate(170%) contrast(.72) brightness(1.12);
}
#ivy-article-dock .iad-surface::before {
content: ""; position: absolute; inset: 0; border-radius: inherit;
pointer-events: none;
box-shadow: inset 1px 0 0 rgba(255,255,255,.35), inset -1px 0 0 rgba(255,255,255,.18);
}
#ivy-article-dock .iad-link {
position: absolute; bottom: calc(var(--iad-bottom) + env(safe-area-inset-bottom, 0px));
display: inline-flex; align-items: center; justify-content: center; gap: 9px;
min-width: 112px; min-height: 48px; height: 48px; padding: 10px 18px;
border-radius: 999px; font-size: 12px; font-weight: 600;
transition: transform .22s ease, box-shadow .22s ease, border-color .18s ease;
}
#ivy-article-dock .iad-prev { left: max(var(--iad-edge), env(safe-area-inset-left, 0px)); }
#ivy-article-dock .iad-next { right: max(var(--iad-edge), env(safe-area-inset-right, 0px)); }
#ivy-article-dock svg { width: 19px; height: 19px; flex: 0 0 auto; display: block; }
#ivy-article-dock .iad-preview {
position: absolute; bottom: calc(100% + 11px); width: 260px;
padding: 14px 16px; border-radius: 20px;
/* More frosting for a multi-line headline than for the compact controls. */
--iad-glass: rgba(245,249,255,.80);
opacity: 0; visibility: hidden; pointer-events: none;
transform: translateY(5px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
#ivy-article-dock .iad-prev .iad-preview { left: 0; }
#ivy-article-dock .iad-next .iad-preview { right: 0; }
#ivy-article-dock .iad-link:hover .iad-preview,
#ivy-article-dock .iad-link:focus-visible .iad-preview {
opacity: 1; visibility: visible; transform: none;
}
#ivy-article-dock .iad-eyebrow { display: block; color: var(--iad-gold); font-size: 10px; letter-spacing: .06em; margin-bottom: 5px; }
#ivy-article-dock .iad-title { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px; font-weight: 550; line-height: 1.4; overflow-wrap: anywhere; }
#ivy-article-dock .iad-center {
position: absolute; bottom: calc(var(--iad-bottom) + env(safe-area-inset-bottom, 0px) + var(--iad-keyboard));
left: 50%; width: min(438px, calc(100% - 316px)); transform: translateX(-50%);
pointer-events: none;
}
#ivy-article-dock .iad-form { position: relative; height: 48px; margin: 0; padding: 0; border: 0; }
#ivy-article-dock .iad-field {
position: relative; display: flex; align-items: center; gap: 0; min-width: 0; height: 48px;
border: 1px solid rgba(255,255,255,.60); border-radius: 999px;
background: rgba(255,255,255,.34);
box-shadow: inset 0 1px 3px rgba(37,57,76,.05), 0 1px 0 rgba(255,255,255,.20);
transition: background-color .18s ease, border-color .18s ease;
}
#ivy-article-dock .iad-field:focus-within {
background: rgba(255,255,255,.56); border-color: rgba(122,95,55,.55);
}
#ivy-article-dock .iad-input {
display: block; flex: 1 1 0%; min-width: 0; width: 0; height: 46px;
padding: 8px 13px; margin: 0; border: 0; border-radius: 999px;
background: transparent; color: var(--iad-ink) !important; caret-color: var(--iad-ink);
font-size: 16px; line-height: 22px; box-shadow: none; outline-offset: 2px;
appearance: none; -webkit-appearance: none;
}
#ivy-article-dock .iad-input::placeholder { color: var(--iad-muted); opacity: 1; font-size: 12px; }
#ivy-article-dock .iad-submit {
display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px;
padding: 0; margin: 0 2px 0 0; border: 1px solid rgba(255,255,255,.61); border-radius: 999px;
background: rgba(255,255,255,.40); box-shadow: 0 2px 5px rgba(23,42,62,.07), inset 0 1px 0 rgba(255,255,255,.72);
transition: background-color .18s ease, transform .18s ease;
}
#ivy-article-dock .iad-submit svg { width: 17px; height: 17px; }
#ivy-article-dock .iad-submit:hover { background: rgba(255,255,255,.75); }
#ivy-article-dock .iad-submit:disabled { cursor: progress; opacity: .65; }
#ivy-article-dock .iad-status { color: var(--iad-ink); font-size: 12px; line-height: 1.4; }
#ivy-article-dock a:focus-visible, #ivy-article-dock button:focus-visible, #ivy-article-dock input:focus-visible {
outline: 2px solid var(--iad-gold) !important; outline-offset: 3px;
}
#ivy-article-dock[data-near-end="true"] .iad-next { border-color: rgba(135,105,60,.66); }
#ivy-article-dock .iad-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (hover: hover) and (pointer: fine) {
#ivy-article-dock .iad-link:hover {
transform: translateY(-3px); border-color: rgba(255,255,255,.98);
box-shadow: 0 21px 45px -12px rgba(19,36,53,.34), 0 7px 16px -8px rgba(19,36,53,.25), inset 0 1px 0 #fff, inset 0 -1px 0 rgba(255,255,255,.50);
}
#ivy-article-dock .iad-link:active { transform: translateY(-1px); }
#ivy-article-dock .iad-submit:active { transform: scale(.96); }
}
@media (max-width: 720px) {
#ivy-article-dock { --iad-edge: 8px; --iad-bottom: 12px; }
#ivy-article-dock .iad-link { min-width: 44px; width: 44px; min-height: 44px; height: 44px; padding: 10px; border-radius: 50%; }
#ivy-article-dock .iad-direction { display: none; }
#ivy-article-dock .iad-center { width: calc(100% - 120px); }
#ivy-article-dock .iad-form { height: 44px; }
#ivy-article-dock .iad-field { height: 44px; }
#ivy-article-dock .iad-input { height: 42px; padding: 9px; }
#ivy-article-dock .iad-input::placeholder { font-size: 11px; }
#ivy-article-dock .iad-submit { flex-basis: 36px; width: 36px; height: 38px; }
#ivy-article-dock .iad-preview { width: min(246px, calc(100vw - 30px)); }
#ivy-article-dock[data-search-focus="true"] .iad-center {
width: calc(100% - max(18px, env(safe-area-inset-left, 0px)) - max(18px, env(safe-area-inset-right, 0px)));
}
#ivy-article-dock[data-search-focus="true"] .iad-link { display: none; }
}
/* Keep comfortable field sizes on touch-first devices, including larger tablets. */
@media (pointer: coarse) and (min-width: 721px) {
#ivy-article-dock .iad-form, #ivy-article-dock .iad-field { height: 48px; }
#ivy-article-dock .iad-input { height: 46px; }
#ivy-article-dock .iad-submit { height: 40px; flex-basis: 40px; width: 40px; }
}
@media (hover: none) { #ivy-article-dock .iad-preview { display: none; } }
@media (prefers-reduced-motion: reduce) {
#ivy-article-dock * { transition: none !important; animation: none !important; }
#ivy-article-dock .iad-link:hover, #ivy-article-dock .iad-submit:active { transform: none; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
#ivy-article-dock .iad-surface { background: #eef3f8; }
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
#ivy-article-dock .iad-surface { background: #eef3f8; border-color: #8193a5; -webkit-backdrop-filter: none; backdrop-filter: none; }
#ivy-article-dock .iad-field { background: #fff; border-color: #8193a5; }
}
@media (forced-colors: active) {
#ivy-article-dock .iad-surface, #ivy-article-dock .iad-field, #ivy-article-dock .iad-submit { background: Canvas; border: 1px solid ButtonText; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
#ivy-article-dock a, #ivy-article-dock button, #ivy-article-dock .iad-input { color: CanvasText !important; text-shadow: none; }
}
@media print { #ivy-article-dock { display: none !important; } }
/* Shown only on the blog index when the search-handoff fallback is needed. */
#ivy-blog-search-handoff { margin: 20px auto; padding: 18px 22px; max-width: 820px; border: 1px solid #b8c4d0; border-radius: 16px; color: #172b40; background: #f3f6f9; font: 16px/1.5 system-ui,sans-serif; }
#ivy-blog-search-handoff p { margin: 0; }
#ivy-blog-search-handoff a { color: #173e65; text-decoration: underline; }
linear-gradient(150deg, rgba(255,255,255,.24), rgba(255,255,255,.05) 48%, rgba(222,235,251,.12)),
var(--iad-glass);
box-shadow: var(--iad-shadow); pointer-events: auto;
-webkit-backdrop-filter: blur(20px) saturate(170%) contrast(.72) brightness(1.12);
backdrop-filter: blur(20px) saturate(170%) contrast(.72) brightness(1.12);
}
#ivy-article-dock .iad-surface::before {
content: ""; position: absolute; inset: 0; border-radius: inherit;
pointer-events: none;
box-shadow: inset 1px 0 0 rgba(255,255,255,.35), inset -1px 0 0 rgba(255,255,255,.18);
}
#ivy-article-dock .iad-link {
position: absolute; bottom: calc(var(--iad-bottom) + env(safe-area-inset-bottom, 0px));
display: inline-flex; align-items: center; justify-content: center; gap: 9px;
min-width: 112px; min-height: 48px; height: 48px; padding: 10px 18px;
border-radius: 999px; font-size: 12px; font-weight: 600;
transition: transform .22s ease, box-shadow .22s ease, border-color .18s ease;
}
#ivy-article-dock .iad-prev { left: max(var(--iad-edge), env(safe-area-inset-left, 0px)); }
#ivy-article-dock .iad-next { right: max(var(--iad-edge), env(safe-area-inset-right, 0px)); }
#ivy-article-dock svg { width: 19px; height: 19px; flex: 0 0 auto; display: block; }
#ivy-article-dock .iad-preview {
position: absolute; bottom: calc(100% + 11px); width: 260px;
padding: 14px 16px; border-radius: 20px;
/* More frosting for a multi-line headline than for the compact controls. */
--iad-glass: rgba(245,249,255,.80);
opacity: 0; visibility: hidden; pointer-events: none;
transform: translateY(5px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
#ivy-article-dock .iad-prev .iad-preview { left: 0; }
#ivy-article-dock .iad-next .iad-preview { right: 0; }
#ivy-article-dock .iad-link:hover .iad-preview,
#ivy-article-dock .iad-link:focus-visible .iad-preview {
opacity: 1; visibility: visible; transform: none;
}
#ivy-article-dock .iad-eyebrow { display: block; color: var(--iad-gold); font-size: 10px; letter-spacing: .06em; margin-bottom: 5px; }
#ivy-article-dock .iad-title { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px; font-weight: 550; line-height: 1.4; overflow-wrap: anywhere; }
#ivy-article-dock .iad-center {
position: absolute; bottom: calc(var(--iad-bottom) + env(safe-area-inset-bottom, 0px) + var(--iad-keyboard));
left: 50%; width: min(438px, calc(100% - 316px)); transform: translateX(-50%);
pointer-events: none;
}
#ivy-article-dock .iad-form { position: relative; height: 48px; margin: 0; padding: 0; border: 0; }
#ivy-article-dock .iad-field {
position: relative; display: flex; align-items: center; gap: 0; min-width: 0; height: 48px;
border: 1px solid rgba(255,255,255,.60); border-radius: 999px;
background: rgba(255,255,255,.34);
box-shadow: inset 0 1px 3px rgba(37,57,76,.05), 0 1px 0 rgba(255,255,255,.20);
transition: background-color .18s ease, border-color .18s ease;
}
#ivy-article-dock .iad-field:focus-within {
background: rgba(255,255,255,.56); border-color: rgba(122,95,55,.55);
}
#ivy-article-dock .iad-input {
display: block; flex: 1 1 0%; min-width: 0; width: 0; height: 46px;
padding: 8px 13px; margin: 0; border: 0; border-radius: 999px;
background: transparent; color: var(--iad-ink) !important; caret-color: var(--iad-ink);
font-size: 16px; line-height: 22px; box-shadow: none; outline-offset: 2px;
appearance: none; -webkit-appearance: none;
}
#ivy-article-dock .iad-input::placeholder { color: var(--iad-muted); opacity: 1; font-size: 12px; }
#ivy-article-dock .iad-submit {
display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px;
padding: 0; margin: 0 2px 0 0; border: 1px solid rgba(255,255,255,.61); border-radius: 999px;
background: rgba(255,255,255,.40); box-shadow: 0 2px 5px rgba(23,42,62,.07), inset 0 1px 0 rgba(255,255,255,.72);
transition: background-color .18s ease, transform .18s ease;
}
#ivy-article-dock .iad-submit svg { width: 17px; height: 17px; }
#ivy-article-dock .iad-submit:hover { background: rgba(255,255,255,.75); }
#ivy-article-dock .iad-submit:disabled { cursor: progress; opacity: .65; }
#ivy-article-dock .iad-status { color: var(--iad-ink); font-size: 12px; line-height: 1.4; }
#ivy-article-dock a:focus-visible, #ivy-article-dock button:focus-visible, #ivy-article-dock input:focus-visible {
outline: 2px solid var(--iad-gold) !important; outline-offset: 3px;
}
#ivy-article-dock[data-near-end="true"] .iad-next { border-color: rgba(135,105,60,.66); }
#ivy-article-dock .iad-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (hover: hover) and (pointer: fine) {
#ivy-article-dock .iad-link:hover {
transform: translateY(-3px); border-color: rgba(255,255,255,.98);
box-shadow: 0 21px 45px -12px rgba(19,36,53,.34), 0 7px 16px -8px rgba(19,36,53,.25), inset 0 1px 0 #fff, inset 0 -1px 0 rgba(255,255,255,.50);
}
#ivy-article-dock .iad-link:active { transform: translateY(-1px); }
#ivy-article-dock .iad-submit:active { transform: scale(.96); }
}
@media (max-width: 720px) {
#ivy-article-dock { --iad-edge: 8px; --iad-bottom: 12px; }
#ivy-article-dock .iad-link { min-width: 44px; width: 44px; min-height: 44px; height: 44px; padding: 10px; border-radius: 50%; }
#ivy-article-dock .iad-direction { display: none; }
#ivy-article-dock .iad-center { width: calc(100% - 120px); }
#ivy-article-dock .iad-form { height: 44px; }
#ivy-article-dock .iad-field { height: 44px; }
#ivy-article-dock .iad-input { height: 42px; padding: 9px; }
#ivy-article-dock .iad-input::placeholder { font-size: 11px; }
#ivy-article-dock .iad-submit { flex-basis: 36px; width: 36px; height: 38px; }
#ivy-article-dock .iad-preview { width: min(246px, calc(100vw - 30px)); }
#ivy-article-dock[data-search-focus="true"] .iad-center {
width: calc(100% - max(18px, env(safe-area-inset-left, 0px)) - max(18px, env(safe-area-inset-right, 0px)));
}
#ivy-article-dock[data-search-focus="true"] .iad-link { display: none; }
}
/* Keep comfortable field sizes on touch-first devices, including larger tablets. */
@media (pointer: coarse) and (min-width: 721px) {
#ivy-article-dock .iad-form, #ivy-article-dock .iad-field { height: 48px; }
#ivy-article-dock .iad-input { height: 46px; }
#ivy-article-dock .iad-submit { height: 40px; flex-basis: 40px; width: 40px; }
}
@media (hover: none) { #ivy-article-dock .iad-preview { display: none; } }
@media (prefers-reduced-motion: reduce) {
#ivy-article-dock * { transition: none !important; animation: none !important; }
#ivy-article-dock .iad-link:hover, #ivy-article-dock .iad-submit:active { transform: none; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
#ivy-article-dock .iad-surface { background: #eef3f8; }
}
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
#ivy-article-dock .iad-surface { background: #eef3f8; border-color: #8193a5; -webkit-backdrop-filter: none; backdrop-filter: none; }
#ivy-article-dock .iad-field { background: #fff; border-color: #8193a5; }
}
@media (forced-colors: active) {
#ivy-article-dock .iad-surface, #ivy-article-dock .iad-field, #ivy-article-dock .iad-submit { background: Canvas; border: 1px solid ButtonText; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
#ivy-article-dock a, #ivy-article-dock button, #ivy-article-dock .iad-input { color: CanvasText !important; text-shadow: none; }
}
@media print { #ivy-article-dock { display: none !important; } }
/* Shown only on the blog index when the search-handoff fallback is needed. */
#ivy-blog-search-handoff { margin: 20px auto; padding: 18px 22px; max-width: 820px; border: 1px solid #b8c4d0; border-radius: 16px; color: #172b40; background: #f3f6f9; font: 16px/1.5 system-ui,sans-serif; }
#ivy-blog-search-handoff p { margin: 0; }
#ivy-blog-search-handoff a { color: #173e65; text-decoration: underline; }
sconnect(); bodyObserver?.disconnect(); delete window[GLOBAL];
}
window[GLOBAL] = { version: '3.0.0', refresh, destroy };
for (const name of ['mercury:load', 'sqs:page-view', 'sqs:after-page-load']) document.addEventListener(name, refresh, { signal: appAbort.signal });
for (const name of ['popstate', 'pageshow', 'load']) window.addEventListener(name, refresh, { signal: appAbort.signal });
if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', start, { once: true, signal: appAbort.signal }); else start();
})();